diff --git a/.classpath b/.classpath
new file mode 100644
index 0000000..eecbc50
--- /dev/null
+++ b/.classpath
@@ -0,0 +1,76 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/.gradle/2.6/taskArtifacts/cache.properties b/.gradle/2.6/taskArtifacts/cache.properties
new file mode 100644
index 0000000..b201b31
--- /dev/null
+++ b/.gradle/2.6/taskArtifacts/cache.properties
@@ -0,0 +1 @@
+#Thu Feb 03 09:34:53 MSK 2022
diff --git a/.gradle/2.6/taskArtifacts/cache.properties.lock b/.gradle/2.6/taskArtifacts/cache.properties.lock
new file mode 100644
index 0000000..6076441
Binary files /dev/null and b/.gradle/2.6/taskArtifacts/cache.properties.lock differ
diff --git a/.gradle/2.6/taskArtifacts/fileHashes.bin b/.gradle/2.6/taskArtifacts/fileHashes.bin
new file mode 100644
index 0000000..8ebd1d0
Binary files /dev/null and b/.gradle/2.6/taskArtifacts/fileHashes.bin differ
diff --git a/.gradle/2.6/taskArtifacts/fileSnapshots.bin b/.gradle/2.6/taskArtifacts/fileSnapshots.bin
new file mode 100644
index 0000000..d6a2bcc
Binary files /dev/null and b/.gradle/2.6/taskArtifacts/fileSnapshots.bin differ
diff --git a/.gradle/2.6/taskArtifacts/outputFileStates.bin b/.gradle/2.6/taskArtifacts/outputFileStates.bin
new file mode 100644
index 0000000..3747720
Binary files /dev/null and b/.gradle/2.6/taskArtifacts/outputFileStates.bin differ
diff --git a/.gradle/2.6/taskArtifacts/taskArtifacts.bin b/.gradle/2.6/taskArtifacts/taskArtifacts.bin
new file mode 100644
index 0000000..f28ce63
Binary files /dev/null and b/.gradle/2.6/taskArtifacts/taskArtifacts.bin differ
diff --git a/.gradle/gradle.log b/.gradle/gradle.log
new file mode 100644
index 0000000..7d91d7b
--- /dev/null
+++ b/.gradle/gradle.log
@@ -0,0 +1,42 @@
+WARNING: You are using an unsupported version of ForgeGradle.
+Please consider upgrading to ForgeGradle 4 and helping in the efforts to get old versions working on the modern toolchain.
+See https://gist.github.com/TheCurle/fe7ad3ede188cbdd15c235cc75d52d4a for more info on contributing.
+#################################################
+ ForgeGradle 1.2.2-g2ea0336
+ https://github.com/MinecraftForge/ForgeGradle
+#################################################
+ Powered by MCP unknown
+ http://modcoderpack.com
+ by: Searge, ProfMobius, Fesh0r,
+ R4wk, ZeuX, IngisKahn, bspkrs
+#################################################
+:compileApiJava UP-TO-DATE
+:processApiResources UP-TO-DATE
+:apiClasses UP-TO-DATE
+:sourceMainJava
+:compileJavawarning: [options] bootstrap class path not set in conjunction with -source 1.6
+Note: Some input files use or override a deprecated API.
+Note: Recompile with -Xlint:deprecation for details.
+Note: Some input files use unchecked or unsafe operations.
+Note: Recompile with -Xlint:unchecked for details.
+1 warning
+
+:processResources
+:classes
+:jar
+:compileTestJava UP-TO-DATE
+:processTestResources UP-TO-DATE
+:testClasses UP-TO-DATE
+:test UP-TO-DATE
+:extractMcpData UP-TO-DATE
+:getVersionJson
+:extractUserDev UP-TO-DATE
+:genSrgs SKIPPED
+:reobf
+:assemble
+:check UP-TO-DATE
+:build
+
+BUILD SUCCESSFUL
+
+Total time: 22.321 secs
diff --git a/.project b/.project
new file mode 100644
index 0000000..6254b9a
--- /dev/null
+++ b/.project
@@ -0,0 +1,16 @@
+
+
+ Advanced Botany Beta-1
+
+
+
+ org.eclipse.jdt.core.javanature
+
+
+
+ org.eclipse.jdt.core.javabuilder
+
+
+
+
+
diff --git a/.settings/org.eclipse.jdt.core.prefs b/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000..7aa7a6e
--- /dev/null
+++ b/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,13 @@
+#
+#Thu Feb 03 09:35:10 MSK 2022
+org.eclipse.jdt.core.compiler.debug.localVariable=generate
+org.eclipse.jdt.core.compiler.compliance=1.6
+org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
+org.eclipse.jdt.core.compiler.debug.sourceFile=generate
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.debug.lineNumber=generate
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.source=1.6
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
diff --git a/CREDITS-fml.txt b/CREDITS-fml.txt
new file mode 100644
index 0000000..97122f5
--- /dev/null
+++ b/CREDITS-fml.txt
@@ -0,0 +1,28 @@
+This is Forge Mod Loader.
+
+You can find the source code at all times at https://github.com/MinecraftForge/FML
+
+This minecraft mod is a clean open source implementation of a mod loader for minecraft servers
+and minecraft clients.
+
+The code is authored by cpw.
+
+It began by partially implementing an API defined by the client side ModLoader, authored by Risugami.
+http://www.minecraftforum.net/topic/75440-
+This support has been dropped as of Minecraft release 1.7, as Risugami no longer maintains ModLoader.
+
+It also contains suggestions and hints and generous helpings of code from LexManos, author of MinecraftForge.
+http://www.minecraftforge.net/
+
+Additionally, it contains an implementation of topological sort based on that
+published at http://keithschwarz.com/interesting/code/?dir=topological-sort
+
+It also contains code from the Maven project for performing versioned dependency
+resolution. http://maven.apache.org/
+
+It also contains a partial repackaging of the javaxdelta library from http://sourceforge.net/projects/javaxdelta/
+with credit to it's authors.
+
+Forge Mod Loader downloads components from the Minecraft Coder Pack
+(http://mcp.ocean-labs.de/index.php/Main_Page) with kind permission from the MCP team.
+
diff --git a/LICENSE-fml.txt b/LICENSE-fml.txt
new file mode 100644
index 0000000..26cca07
--- /dev/null
+++ b/LICENSE-fml.txt
@@ -0,0 +1,491 @@
+This minecraft mod, Forge Mod Loader, including all parts herein except as noted below,
+is licensed under the GNU LGPL v2.1 or later.
+
+Homepage: https://github.com/MinecraftForge/FML
+
+This software includes portions from the Apache Maven project at
+http://maven.apache.org/ specifically the ComparableVersion.java code. It is
+included based on guidelines at
+http://www.softwarefreedom.org/resources/2007/gpl-non-gpl-collaboration.html
+with notices intact. The only change is a non-functional change of package name.
+
+This software contains a partial repackaging of javaxdelta, a BSD licensed program for generating
+binary differences and applying them, sourced from the subversion at http://sourceforge.net/projects/javaxdelta/
+authored by genman, heikok, pivot.
+The only changes are to replace some Trove collection types with standard Java collections, and repackaged.
+
+
+=== MCP Data ===
+This software includes data from the Minecraft Coder Pack (MCP), with kind permission
+from them. The license to MCP data is not transitive - distribution of this data by
+third parties requires independent licensing from the MCP team. This data is not
+redistributable without permission from the MCP team.
+
+=== Sharing ===
+I grant permission for some parts of FML to be redistributed outside the terms of the LGPL, for the benefit of
+the minecraft modding community. All contributions to these parts should be licensed under the same additional grant.
+
+-- Runtime patcher --
+License is granted to redistribute the runtime patcher code (common/cpw/mods/fml/patcher and subdirectories) under
+any alternative open source license as classified by the OSI (http://opensource.org/licenses)
+
+-- ASM transformers --
+License is granted to redistribute the ASM transformer code (common/cpw/mods/fml/common/asm/ and subdirectories)
+under any alternative open source license as classified by the OSI (http://opensource.org/licenses)
+
+========
+
+ GNU LESSER GENERAL PUBLIC LICENSE
+ Version 2.1, February 1999
+
+ Copyright (C) 1991, 1999 Free Software Foundation, Inc.
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+ Preamble
+
+ The licenses for most software are designed to take away your
+freedom to share and change it. By contrast, the GNU General Public
+Licenses are intended to guarantee your freedom to share and change
+free software--to make sure the software is free for all its users.
+
+ This license, the Lesser General Public License, applies to some
+specially designated software packages--typically libraries--of the
+Free Software Foundation and other authors who decide to use it. You
+can use it too, but we suggest you first think carefully about whether
+this license or the ordinary General Public License is the better
+strategy to use in any particular case, based on the explanations below.
+
+ When we speak of free software, we are referring to freedom of use,
+not price. Our General Public Licenses are designed to make sure that
+you have the freedom to distribute copies of free software (and charge
+for this service if you wish); that you receive source code or can get
+it if you want it; that you can change the software and use pieces of
+it in new free programs; and that you are informed that you can do
+these things.
+
+ To protect your rights, we need to make restrictions that forbid
+distributors to deny you these rights or to ask you to surrender these
+rights. These restrictions translate to certain responsibilities for
+you if you distribute copies of the library or if you modify it.
+
+ For example, if you distribute copies of the library, whether gratis
+or for a fee, you must give the recipients all the rights that we gave
+you. You must make sure that they, too, receive or can get the source
+code. If you link other code with the library, you must provide
+complete object files to the recipients, so that they can relink them
+with the library after making changes to the library and recompiling
+it. And you must show them these terms so they know their rights.
+
+ We protect your rights with a two-step method: (1) we copyright the
+library, and (2) we offer you this license, which gives you legal
+permission to copy, distribute and/or modify the library.
+
+ To protect each distributor, we want to make it very clear that
+there is no warranty for the free library. Also, if the library is
+modified by someone else and passed on, the recipients should know
+that what they have is not the original version, so that the original
+author's reputation will not be affected by problems that might be
+introduced by others.
+
+ Finally, software patents pose a constant threat to the existence of
+any free program. We wish to make sure that a company cannot
+effectively restrict the users of a free program by obtaining a
+restrictive license from a patent holder. Therefore, we insist that
+any patent license obtained for a version of the library must be
+consistent with the full freedom of use specified in this license.
+
+ Most GNU software, including some libraries, is covered by the
+ordinary GNU General Public License. This license, the GNU Lesser
+General Public License, applies to certain designated libraries, and
+is quite different from the ordinary General Public License. We use
+this license for certain libraries in order to permit linking those
+libraries into non-free programs.
+
+ When a program is linked with a library, whether statically or using
+a shared library, the combination of the two is legally speaking a
+combined work, a derivative of the original library. The ordinary
+General Public License therefore permits such linking only if the
+entire combination fits its criteria of freedom. The Lesser General
+Public License permits more lax criteria for linking other code with
+the library.
+
+ We call this license the "Lesser" General Public License because it
+does Less to protect the user's freedom than the ordinary General
+Public License. It also provides other free software developers Less
+of an advantage over competing non-free programs. These disadvantages
+are the reason we use the ordinary General Public License for many
+libraries. However, the Lesser license provides advantages in certain
+special circumstances.
+
+ For example, on rare occasions, there may be a special need to
+encourage the widest possible use of a certain library, so that it becomes
+a de-facto standard. To achieve this, non-free programs must be
+allowed to use the library. A more frequent case is that a free
+library does the same job as widely used non-free libraries. In this
+case, there is little to gain by limiting the free library to free
+software only, so we use the Lesser General Public License.
+
+ In other cases, permission to use a particular library in non-free
+programs enables a greater number of people to use a large body of
+free software. For example, permission to use the GNU C Library in
+non-free programs enables many more people to use the whole GNU
+operating system, as well as its variant, the GNU/Linux operating
+system.
+
+ Although the Lesser General Public License is Less protective of the
+users' freedom, it does ensure that the user of a program that is
+linked with the Library has the freedom and the wherewithal to run
+that program using a modified version of the Library.
+
+ The precise terms and conditions for copying, distribution and
+modification follow. Pay close attention to the difference between a
+"work based on the library" and a "work that uses the library". The
+former contains code derived from the library, whereas the latter must
+be combined with the library in order to run.
+
+ GNU LESSER GENERAL PUBLIC LICENSE
+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+ 0. This License Agreement applies to any software library or other
+program which contains a notice placed by the copyright holder or
+other authorized party saying it may be distributed under the terms of
+this Lesser General Public License (also called "this License").
+Each licensee is addressed as "you".
+
+ A "library" means a collection of software functions and/or data
+prepared so as to be conveniently linked with application programs
+(which use some of those functions and data) to form executables.
+
+ The "Library", below, refers to any such software library or work
+which has been distributed under these terms. A "work based on the
+Library" means either the Library or any derivative work under
+copyright law: that is to say, a work containing the Library or a
+portion of it, either verbatim or with modifications and/or translated
+straightforwardly into another language. (Hereinafter, translation is
+included without limitation in the term "modification".)
+
+ "Source code" for a work means the preferred form of the work for
+making modifications to it. For a library, complete source code means
+all the source code for all modules it contains, plus any associated
+interface definition files, plus the scripts used to control compilation
+and installation of the library.
+
+ Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope. The act of
+running a program using the Library is not restricted, and output from
+such a program is covered only if its contents constitute a work based
+on the Library (independent of the use of the Library in a tool for
+writing it). Whether that is true depends on what the Library does
+and what the program that uses the Library does.
+
+ 1. You may copy and distribute verbatim copies of the Library's
+complete source code as you receive it, in any medium, provided that
+you conspicuously and appropriately publish on each copy an
+appropriate copyright notice and disclaimer of warranty; keep intact
+all the notices that refer to this License and to the absence of any
+warranty; and distribute a copy of this License along with the
+Library.
+
+ You may charge a fee for the physical act of transferring a copy,
+and you may at your option offer warranty protection in exchange for a
+fee.
+
+ 2. You may modify your copy or copies of the Library or any portion
+of it, thus forming a work based on the Library, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+ a) The modified work must itself be a software library.
+
+ b) You must cause the files modified to carry prominent notices
+ stating that you changed the files and the date of any change.
+
+ c) You must cause the whole of the work to be licensed at no
+ charge to all third parties under the terms of this License.
+
+ d) If a facility in the modified Library refers to a function or a
+ table of data to be supplied by an application program that uses
+ the facility, other than as an argument passed when the facility
+ is invoked, then you must make a good faith effort to ensure that,
+ in the event an application does not supply such function or
+ table, the facility still operates, and performs whatever part of
+ its purpose remains meaningful.
+
+ (For example, a function in a library to compute square roots has
+ a purpose that is entirely well-defined independent of the
+ application. Therefore, Subsection 2d requires that any
+ application-supplied function or table used by this function must
+ be optional: if the application does not supply it, the square
+ root function must still compute square roots.)
+
+These requirements apply to the modified work as a whole. If
+identifiable sections of that work are not derived from the Library,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works. But when you
+distribute the same sections as part of a whole which is a work based
+on the Library, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote
+it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Library.
+
+In addition, mere aggregation of another work not based on the Library
+with the Library (or with a work based on the Library) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+ 3. You may opt to apply the terms of the ordinary GNU General Public
+License instead of this License to a given copy of the Library. To do
+this, you must alter all the notices that refer to this License, so
+that they refer to the ordinary GNU General Public License, version 2,
+instead of to this License. (If a newer version than version 2 of the
+ordinary GNU General Public License has appeared, then you can specify
+that version instead if you wish.) Do not make any other change in
+these notices.
+
+ Once this change is made in a given copy, it is irreversible for
+that copy, so the ordinary GNU General Public License applies to all
+subsequent copies and derivative works made from that copy.
+
+ This option is useful when you wish to copy part of the code of
+the Library into a program that is not a library.
+
+ 4. You may copy and distribute the Library (or a portion or
+derivative of it, under Section 2) in object code or executable form
+under the terms of Sections 1 and 2 above provided that you accompany
+it with the complete corresponding machine-readable source code, which
+must be distributed under the terms of Sections 1 and 2 above on a
+medium customarily used for software interchange.
+
+ If distribution of object code is made by offering access to copy
+from a designated place, then offering equivalent access to copy the
+source code from the same place satisfies the requirement to
+distribute the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+ 5. A program that contains no derivative of any portion of the
+Library, but is designed to work with the Library by being compiled or
+linked with it, is called a "work that uses the Library". Such a
+work, in isolation, is not a derivative work of the Library, and
+therefore falls outside the scope of this License.
+
+ However, linking a "work that uses the Library" with the Library
+creates an executable that is a derivative of the Library (because it
+contains portions of the Library), rather than a "work that uses the
+library". The executable is therefore covered by this License.
+Section 6 states terms for distribution of such executables.
+
+ When a "work that uses the Library" uses material from a header file
+that is part of the Library, the object code for the work may be a
+derivative work of the Library even though the source code is not.
+Whether this is true is especially significant if the work can be
+linked without the Library, or if the work is itself a library. The
+threshold for this to be true is not precisely defined by law.
+
+ If such an object file uses only numerical parameters, data
+structure layouts and accessors, and small macros and small inline
+functions (ten lines or less in length), then the use of the object
+file is unrestricted, regardless of whether it is legally a derivative
+work. (Executables containing this object code plus portions of the
+Library will still fall under Section 6.)
+
+ Otherwise, if the work is a derivative of the Library, you may
+distribute the object code for the work under the terms of Section 6.
+Any executables containing that work also fall under Section 6,
+whether or not they are linked directly with the Library itself.
+
+ 6. As an exception to the Sections above, you may also combine or
+link a "work that uses the Library" with the Library to produce a
+work containing portions of the Library, and distribute that work
+under terms of your choice, provided that the terms permit
+modification of the work for the customer's own use and reverse
+engineering for debugging such modifications.
+
+ You must give prominent notice with each copy of the work that the
+Library is used in it and that the Library and its use are covered by
+this License. You must supply a copy of this License. If the work
+during execution displays copyright notices, you must include the
+copyright notice for the Library among them, as well as a reference
+directing the user to the copy of this License. Also, you must do one
+of these things:
+
+ a) Accompany the work with the complete corresponding
+ machine-readable source code for the Library including whatever
+ changes were used in the work (which must be distributed under
+ Sections 1 and 2 above); and, if the work is an executable linked
+ with the Library, with the complete machine-readable "work that
+ uses the Library", as object code and/or source code, so that the
+ user can modify the Library and then relink to produce a modified
+ executable containing the modified Library. (It is understood
+ that the user who changes the contents of definitions files in the
+ Library will not necessarily be able to recompile the application
+ to use the modified definitions.)
+
+ b) Use a suitable shared library mechanism for linking with the
+ Library. A suitable mechanism is one that (1) uses at run time a
+ copy of the library already present on the user's computer system,
+ rather than copying library functions into the executable, and (2)
+ will operate properly with a modified version of the library, if
+ the user installs one, as long as the modified version is
+ interface-compatible with the version that the work was made with.
+
+ c) Accompany the work with a written offer, valid for at
+ least three years, to give the same user the materials
+ specified in Subsection 6a, above, for a charge no more
+ than the cost of performing this distribution.
+
+ d) If distribution of the work is made by offering access to copy
+ from a designated place, offer equivalent access to copy the above
+ specified materials from the same place.
+
+ e) Verify that the user has already received a copy of these
+ materials or that you have already sent this user a copy.
+
+ For an executable, the required form of the "work that uses the
+Library" must include any data and utility programs needed for
+reproducing the executable from it. However, as a special exception,
+the materials to be distributed need not include anything that is
+normally distributed (in either source or binary form) with the major
+components (compiler, kernel, and so on) of the operating system on
+which the executable runs, unless that component itself accompanies
+the executable.
+
+ It may happen that this requirement contradicts the license
+restrictions of other proprietary libraries that do not normally
+accompany the operating system. Such a contradiction means you cannot
+use both them and the Library together in an executable that you
+distribute.
+
+ 7. You may place library facilities that are a work based on the
+Library side-by-side in a single library together with other library
+facilities not covered by this License, and distribute such a combined
+library, provided that the separate distribution of the work based on
+the Library and of the other library facilities is otherwise
+permitted, and provided that you do these two things:
+
+ a) Accompany the combined library with a copy of the same work
+ based on the Library, uncombined with any other library
+ facilities. This must be distributed under the terms of the
+ Sections above.
+
+ b) Give prominent notice with the combined library of the fact
+ that part of it is a work based on the Library, and explaining
+ where to find the accompanying uncombined form of the same work.
+
+ 8. You may not copy, modify, sublicense, link with, or distribute
+the Library except as expressly provided under this License. Any
+attempt otherwise to copy, modify, sublicense, link with, or
+distribute the Library is void, and will automatically terminate your
+rights under this License. However, parties who have received copies,
+or rights, from you under this License will not have their licenses
+terminated so long as such parties remain in full compliance.
+
+ 9. You are not required to accept this License, since you have not
+signed it. However, nothing else grants you permission to modify or
+distribute the Library or its derivative works. These actions are
+prohibited by law if you do not accept this License. Therefore, by
+modifying or distributing the Library (or any work based on the
+Library), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Library or works based on it.
+
+ 10. Each time you redistribute the Library (or any work based on the
+Library), the recipient automatically receives a license from the
+original licensor to copy, distribute, link with or modify the Library
+subject to these terms and conditions. You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties with
+this License.
+
+ 11. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Library at all. For example, if a patent
+license would not permit royalty-free redistribution of the Library by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Library.
+
+If any portion of this section is held invalid or unenforceable under any
+particular circumstance, the balance of the section is intended to apply,
+and the section as a whole is intended to apply in other circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system which is
+implemented by public license practices. Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+ 12. If the distribution and/or use of the Library is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Library under this License may add
+an explicit geographical distribution limitation excluding those countries,
+so that distribution is permitted only in or among countries not thus
+excluded. In such case, this License incorporates the limitation as if
+written in the body of this License.
+
+ 13. The Free Software Foundation may publish revised and/or new
+versions of the Lesser General Public License from time to time.
+Such new versions will be similar in spirit to the present version,
+but may differ in detail to address new problems or concerns.
+
+Each version is given a distinguishing version number. If the Library
+specifies a version number of this License which applies to it and
+"any later version", you have the option of following the terms and
+conditions either of that version or of any later version published by
+the Free Software Foundation. If the Library does not specify a
+license version number, you may choose any version ever published by
+the Free Software Foundation.
+
+ 14. If you wish to incorporate parts of the Library into other free
+programs whose distribution conditions are incompatible with these,
+write to the author to ask for permission. For software which is
+copyrighted by the Free Software Foundation, write to the Free
+Software Foundation; we sometimes make exceptions for this. Our
+decision will be guided by the two goals of preserving the free status
+of all derivatives of our free software and of promoting the sharing
+and reuse of software generally.
+
+ NO WARRANTY
+
+ 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
+WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
+EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
+OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
+KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
+LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
+THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
+
+ 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
+WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
+AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
+FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
+CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
+LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
+RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
+FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
+SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
+DAMAGES.
+
+ END OF TERMS AND CONDITIONS
diff --git a/MinecraftForge-Credits.txt b/MinecraftForge-Credits.txt
new file mode 100644
index 0000000..d0de5a5
--- /dev/null
+++ b/MinecraftForge-Credits.txt
@@ -0,0 +1,26 @@
+* Eloraam *
+
+* FlowerChild *
+
+* Hawkye *
+
+* MALfunction84 *
+
+Submitted the sleep handler code for his mod (Somnia) and others to use.
+
+* Scokeev9 *
+
+Gave permission for ScotTools API to be integrated into MCF, and also supported the Forge by converting his mods to use it.
+
+ScotTools Background: ScotTools was an API that enabled modders to add blocks to harvesting levels (and many other ease-of-use features to create new tools), and the first tool API that used block material for block breaking efficiency which allowed blocks from mods that didn't use ScotTools API to break with the correct speed.
+
+* SpaceToad *
+
+* LexManos *
+
+* cpw *
+
+* Minecraft Coder Pack (MCP) *
+Forge Mod Loader and Minecraft Forge have permission to distribute and automatically download components of MCP and distribute MCP data files.
+This permission is not transitive and others wishing to redistribute the Minecraft Forge source independently should seek permission of MCP or
+remove the MCP data files and request their users to download MCP separately.
diff --git a/MinecraftForge-License.txt b/MinecraftForge-License.txt
new file mode 100644
index 0000000..1cc2a3e
--- /dev/null
+++ b/MinecraftForge-License.txt
@@ -0,0 +1,70 @@
+Minecraft Forge Public Licence
+==============================
+
+Version 1.0
+
+0. Definitions
+--------------
+
+Minecraft: Denotes a copy of the Minecraft game licensed by Mojang AB
+
+User: Anybody that interract with the software in one of the following ways:
+ - play
+ - decompile
+ - recompile or compile
+ - modify
+
+Minecraft Forge: The Minecraft Forge code, in source form, class file form, as
+obtained in a standalone fashion or as part of a wider distribution.
+
+Dependency: Code required to have Minecraft Forge working properly. That can
+include dependencies required to compile the code as well as modifications in
+the Minecraft sources that are required to have Minecraft Forge working.
+
+1. Scope
+--------
+
+The present license is granted to any user of Minecraft Forge, for all files included
+unless stated otherwise in the file itself. As a prerequisite, a user of Minecraft
+Forge must own a legally aquired copy of Minecraft.
+
+2. Play rights
+--------------
+
+The user of Minecraft Forge is allowed to install the software on a client or
+a server and to play it without restriction.
+
+3. Modification rights
+----------------------
+
+The user has the right to decompile the source code, look at either the
+decompiled version or the original source code, and to modify it.
+
+4. Derivation rights
+--------------------
+
+The user has the rights to derive code from Minecraft Forge, that is to say to
+write code that either extends Minecraft Forge class and interfaces,
+instantiate the objects declared or calls the functions. This code is known as
+"derived" code, and can be licensed with conditions different from Minecraft
+Forge.
+
+
+5. Distribution rights
+----------------------
+
+The user of Minecraft Forge is allowed to redistribute Minecraft Forge in
+partially, in totallity, or included in a distribution. When distributing
+binaries or class files, the user must provide means to obtain the sources of
+the distributed version of Minecraft Forge at no costs. This includes the
+files as well as any dependency that the code may rely on, including patches to
+minecraft original sources.
+
+Modification of Minecraft Forge as well as dependencies, including patches to
+minecraft original sources, has to remain under the terms of the present
+license.
+
+The right to distribute Minecraft Forge does not extend to the right to distribute
+MCP data files included within Minecraft Forge. These are the property of the MCP
+project and should be removed from any customized distribution of Minecraft Forge
+or permission sought separately from the MCP team.
diff --git a/README.txt b/README.txt
new file mode 100644
index 0000000..744ba3b
--- /dev/null
+++ b/README.txt
@@ -0,0 +1,37 @@
+-------------------------------------------
+Source installation information for modders
+-------------------------------------------
+This code follows the Minecraft Forge installation methodology. It will apply
+some small patches to the vanilla MCP source code, giving you and it access
+to some of the data and functions you need to build a successful mod.
+
+Note also that the patches are built against "unrenamed" MCP source code (aka
+srgnames) - this means that you will not be able to read them directly against
+normal code.
+
+Source pack installation information:
+
+Standalone source installation
+==============================
+
+To install this source code for development purposes, extract this zip file.
+It ships with a demonstration mod. Run 'gradlew setupDevWorkspace' to create
+a gradle environment primed with FML. Run 'gradlew eclipse' or 'gradlew idea' to
+create an IDE workspace of your choice.
+Refer to ForgeGradle for more information about the gradle environment
+Note: On macs or linux you run the './gradlew.sh' instead of 'gradlew'
+
+Forge source installation
+=========================
+MinecraftForge ships with this code and installs it as part of the forge
+installation process, no further action is required on your part.
+
+For reference this is version @MAJOR@.@MINOR@.@REV@.@BUILD@ of FML
+for Minecraft version @MCVERSION@.
+
+LexManos' Install Video
+=======================
+https://www.youtube.com/watch?v=8VEdtQLuLO0&feature=youtu.be
+
+For more details update more often refer to the Forge Forums:
+http://www.minecraftforge.net/forum/index.php/topic,14048.0.html
diff --git a/bin/ab/AdvancedBotany.class b/bin/ab/AdvancedBotany.class
new file mode 100644
index 0000000..9cb92d5
Binary files /dev/null and b/bin/ab/AdvancedBotany.class differ
diff --git a/bin/ab/AdvancedBotanyTab.class b/bin/ab/AdvancedBotanyTab.class
new file mode 100644
index 0000000..3ae743e
Binary files /dev/null and b/bin/ab/AdvancedBotanyTab.class differ
diff --git a/bin/ab/api/AdvancedBotanyAPI.class b/bin/ab/api/AdvancedBotanyAPI.class
new file mode 100644
index 0000000..320a8dd
Binary files /dev/null and b/bin/ab/api/AdvancedBotanyAPI.class differ
diff --git a/bin/ab/api/AdvancedCorporeaHelper.class b/bin/ab/api/AdvancedCorporeaHelper.class
new file mode 100644
index 0000000..64f2d31
Binary files /dev/null and b/bin/ab/api/AdvancedCorporeaHelper.class differ
diff --git a/bin/ab/api/ICorporeaModification.class b/bin/ab/api/ICorporeaModification.class
new file mode 100644
index 0000000..2b2c286
Binary files /dev/null and b/bin/ab/api/ICorporeaModification.class differ
diff --git a/bin/ab/api/IRankItem.class b/bin/ab/api/IRankItem.class
new file mode 100644
index 0000000..cc7592d
Binary files /dev/null and b/bin/ab/api/IRankItem.class differ
diff --git a/bin/ab/api/IRenderHud.class b/bin/ab/api/IRenderHud.class
new file mode 100644
index 0000000..9755762
Binary files /dev/null and b/bin/ab/api/IRenderHud.class differ
diff --git a/bin/ab/api/TerraFarmlandList.class b/bin/ab/api/TerraFarmlandList.class
new file mode 100644
index 0000000..7659c51
Binary files /dev/null and b/bin/ab/api/TerraFarmlandList.class differ
diff --git a/bin/ab/api/recipe/RecipeAdvancedPlate.class b/bin/ab/api/recipe/RecipeAdvancedPlate.class
new file mode 100644
index 0000000..0cdb38a
Binary files /dev/null and b/bin/ab/api/recipe/RecipeAdvancedPlate.class differ
diff --git a/bin/ab/api/recipe/RecipeAncientAlphirine.class b/bin/ab/api/recipe/RecipeAncientAlphirine.class
new file mode 100644
index 0000000..64f4d8a
Binary files /dev/null and b/bin/ab/api/recipe/RecipeAncientAlphirine.class differ
diff --git a/bin/ab/api/recipe/lexicon/AdvancedPlateCraftPage.class b/bin/ab/api/recipe/lexicon/AdvancedPlateCraftPage.class
new file mode 100644
index 0000000..5aa7170
Binary files /dev/null and b/bin/ab/api/recipe/lexicon/AdvancedPlateCraftPage.class differ
diff --git a/bin/ab/api/recipe/lexicon/AlphirineCraftPage.class b/bin/ab/api/recipe/lexicon/AlphirineCraftPage.class
new file mode 100644
index 0000000..a97d87b
Binary files /dev/null and b/bin/ab/api/recipe/lexicon/AlphirineCraftPage.class differ
diff --git a/bin/ab/client/core/ClientHandler.class b/bin/ab/client/core/ClientHandler.class
new file mode 100644
index 0000000..ada16cc
Binary files /dev/null and b/bin/ab/client/core/ClientHandler.class differ
diff --git a/bin/ab/client/core/ClientHelper.class b/bin/ab/client/core/ClientHelper.class
new file mode 100644
index 0000000..97bafd3
Binary files /dev/null and b/bin/ab/client/core/ClientHelper.class differ
diff --git a/bin/ab/client/core/HudRender.class b/bin/ab/client/core/HudRender.class
new file mode 100644
index 0000000..ff01fb7
Binary files /dev/null and b/bin/ab/client/core/HudRender.class differ
diff --git a/bin/ab/client/core/proxy/ClientProxy.class b/bin/ab/client/core/proxy/ClientProxy.class
new file mode 100644
index 0000000..6fec31c
Binary files /dev/null and b/bin/ab/client/core/proxy/ClientProxy.class differ
diff --git a/bin/ab/client/model/ModelArmorNebula.class b/bin/ab/client/model/ModelArmorNebula.class
new file mode 100644
index 0000000..733f77d
Binary files /dev/null and b/bin/ab/client/model/ModelArmorNebula.class differ
diff --git a/bin/ab/client/model/ModelManaCharger.class b/bin/ab/client/model/ModelManaCharger.class
new file mode 100644
index 0000000..75bed32
Binary files /dev/null and b/bin/ab/client/model/ModelManaCharger.class differ
diff --git a/bin/ab/client/model/ModelManaContainer.class b/bin/ab/client/model/ModelManaContainer.class
new file mode 100644
index 0000000..cc45b37
Binary files /dev/null and b/bin/ab/client/model/ModelManaContainer.class differ
diff --git a/bin/ab/client/nei/NEIConfig.class b/bin/ab/client/nei/NEIConfig.class
new file mode 100644
index 0000000..8bad246
Binary files /dev/null and b/bin/ab/client/nei/NEIConfig.class differ
diff --git a/bin/ab/client/nei/RecipeHandlerAdvancedPlate$CachedAdvancedPlateRecipe.class b/bin/ab/client/nei/RecipeHandlerAdvancedPlate$CachedAdvancedPlateRecipe.class
new file mode 100644
index 0000000..750e775
Binary files /dev/null and b/bin/ab/client/nei/RecipeHandlerAdvancedPlate$CachedAdvancedPlateRecipe.class differ
diff --git a/bin/ab/client/nei/RecipeHandlerAdvancedPlate.class b/bin/ab/client/nei/RecipeHandlerAdvancedPlate.class
new file mode 100644
index 0000000..7c4b8b9
Binary files /dev/null and b/bin/ab/client/nei/RecipeHandlerAdvancedPlate.class differ
diff --git a/bin/ab/client/nei/RecipeHandlerAlphirine$CachedHandlerAlphirine.class b/bin/ab/client/nei/RecipeHandlerAlphirine$CachedHandlerAlphirine.class
new file mode 100644
index 0000000..7f405aa
Binary files /dev/null and b/bin/ab/client/nei/RecipeHandlerAlphirine$CachedHandlerAlphirine.class differ
diff --git a/bin/ab/client/nei/RecipeHandlerAlphirine.class b/bin/ab/client/nei/RecipeHandlerAlphirine.class
new file mode 100644
index 0000000..3b11259
Binary files /dev/null and b/bin/ab/client/nei/RecipeHandlerAlphirine.class differ
diff --git a/bin/ab/client/render/block/RenderBlockABSpreader.class b/bin/ab/client/render/block/RenderBlockABSpreader.class
new file mode 100644
index 0000000..499c19d
Binary files /dev/null and b/bin/ab/client/render/block/RenderBlockABSpreader.class differ
diff --git a/bin/ab/client/render/block/RenderBlockManaCharger.class b/bin/ab/client/render/block/RenderBlockManaCharger.class
new file mode 100644
index 0000000..f4615c9
Binary files /dev/null and b/bin/ab/client/render/block/RenderBlockManaCharger.class differ
diff --git a/bin/ab/client/render/block/RenderBlockManaContainer.class b/bin/ab/client/render/block/RenderBlockManaContainer.class
new file mode 100644
index 0000000..d0ff16b
Binary files /dev/null and b/bin/ab/client/render/block/RenderBlockManaContainer.class differ
diff --git a/bin/ab/client/render/block/RenderBlockManaCrystalCube.class b/bin/ab/client/render/block/RenderBlockManaCrystalCube.class
new file mode 100644
index 0000000..3fdafa9
Binary files /dev/null and b/bin/ab/client/render/block/RenderBlockManaCrystalCube.class differ
diff --git a/bin/ab/client/render/entity/EntityNullRender.class b/bin/ab/client/render/entity/EntityNullRender.class
new file mode 100644
index 0000000..1630ad9
Binary files /dev/null and b/bin/ab/client/render/entity/EntityNullRender.class differ
diff --git a/bin/ab/client/render/entity/RenderEntityAdvancedSpark.class b/bin/ab/client/render/entity/RenderEntityAdvancedSpark.class
new file mode 100644
index 0000000..3df7b6c
Binary files /dev/null and b/bin/ab/client/render/entity/RenderEntityAdvancedSpark.class differ
diff --git a/bin/ab/client/render/entity/RenderManaVine.class b/bin/ab/client/render/entity/RenderManaVine.class
new file mode 100644
index 0000000..b59509c
Binary files /dev/null and b/bin/ab/client/render/entity/RenderManaVine.class differ
diff --git a/bin/ab/client/render/item/RenderAntigravityCharm.class b/bin/ab/client/render/item/RenderAntigravityCharm.class
new file mode 100644
index 0000000..81e0669
Binary files /dev/null and b/bin/ab/client/render/item/RenderAntigravityCharm.class differ
diff --git a/bin/ab/client/render/tile/RenderModifiedFunnel.class b/bin/ab/client/render/tile/RenderModifiedFunnel.class
new file mode 100644
index 0000000..26ac114
Binary files /dev/null and b/bin/ab/client/render/tile/RenderModifiedFunnel.class differ
diff --git a/bin/ab/client/render/tile/RenderModifiedInterrupter.class b/bin/ab/client/render/tile/RenderModifiedInterrupter.class
new file mode 100644
index 0000000..bd0c3f8
Binary files /dev/null and b/bin/ab/client/render/tile/RenderModifiedInterrupter.class differ
diff --git a/bin/ab/client/render/tile/RenderModifiedRetainer.class b/bin/ab/client/render/tile/RenderModifiedRetainer.class
new file mode 100644
index 0000000..fa28780
Binary files /dev/null and b/bin/ab/client/render/tile/RenderModifiedRetainer.class differ
diff --git a/bin/ab/client/render/tile/RenderTileABSpreader.class b/bin/ab/client/render/tile/RenderTileABSpreader.class
new file mode 100644
index 0000000..48f8e7a
Binary files /dev/null and b/bin/ab/client/render/tile/RenderTileABSpreader.class differ
diff --git a/bin/ab/client/render/tile/RenderTileAgglomerationPlate.class b/bin/ab/client/render/tile/RenderTileAgglomerationPlate.class
new file mode 100644
index 0000000..63869a4
Binary files /dev/null and b/bin/ab/client/render/tile/RenderTileAgglomerationPlate.class differ
diff --git a/bin/ab/client/render/tile/RenderTileCorporeaCatalyst.class b/bin/ab/client/render/tile/RenderTileCorporeaCatalyst.class
new file mode 100644
index 0000000..a98b9c1
Binary files /dev/null and b/bin/ab/client/render/tile/RenderTileCorporeaCatalyst.class differ
diff --git a/bin/ab/client/render/tile/RenderTileManaCharger.class b/bin/ab/client/render/tile/RenderTileManaCharger.class
new file mode 100644
index 0000000..03ab923
Binary files /dev/null and b/bin/ab/client/render/tile/RenderTileManaCharger.class differ
diff --git a/bin/ab/client/render/tile/RenderTileManaContainer.class b/bin/ab/client/render/tile/RenderTileManaContainer.class
new file mode 100644
index 0000000..b22b00f
Binary files /dev/null and b/bin/ab/client/render/tile/RenderTileManaContainer.class differ
diff --git a/bin/ab/client/render/tile/RenderTileManaCrystalCube.class b/bin/ab/client/render/tile/RenderTileManaCrystalCube.class
new file mode 100644
index 0000000..79e5be9
Binary files /dev/null and b/bin/ab/client/render/tile/RenderTileManaCrystalCube.class differ
diff --git a/bin/ab/client/render/tile/RenderTileModifiedInterceptor.class b/bin/ab/client/render/tile/RenderTileModifiedInterceptor.class
new file mode 100644
index 0000000..22fd73c
Binary files /dev/null and b/bin/ab/client/render/tile/RenderTileModifiedInterceptor.class differ
diff --git a/bin/ab/client/render/tile/TileRenderer.class b/bin/ab/client/render/tile/TileRenderer.class
new file mode 100644
index 0000000..a8f982e
Binary files /dev/null and b/bin/ab/client/render/tile/TileRenderer.class differ
diff --git a/bin/ab/common/block/BlockABSpreader.class b/bin/ab/common/block/BlockABSpreader.class
new file mode 100644
index 0000000..950eda5
Binary files /dev/null and b/bin/ab/common/block/BlockABSpreader.class differ
diff --git a/bin/ab/common/block/BlockABStorage.class b/bin/ab/common/block/BlockABStorage.class
new file mode 100644
index 0000000..231606b
Binary files /dev/null and b/bin/ab/common/block/BlockABStorage.class differ
diff --git a/bin/ab/common/block/BlockAgglomerationPlate.class b/bin/ab/common/block/BlockAgglomerationPlate.class
new file mode 100644
index 0000000..ebe32f5
Binary files /dev/null and b/bin/ab/common/block/BlockAgglomerationPlate.class differ
diff --git a/bin/ab/common/block/BlockAntigravitation.class b/bin/ab/common/block/BlockAntigravitation.class
new file mode 100644
index 0000000..e31495f
Binary files /dev/null and b/bin/ab/common/block/BlockAntigravitation.class differ
diff --git a/bin/ab/common/block/BlockCorporeaCatalyst.class b/bin/ab/common/block/BlockCorporeaCatalyst.class
new file mode 100644
index 0000000..509a119
Binary files /dev/null and b/bin/ab/common/block/BlockCorporeaCatalyst.class differ
diff --git a/bin/ab/common/block/BlockCorporeaInterrupter.class b/bin/ab/common/block/BlockCorporeaInterrupter.class
new file mode 100644
index 0000000..1d9e30f
Binary files /dev/null and b/bin/ab/common/block/BlockCorporeaInterrupter.class differ
diff --git a/bin/ab/common/block/BlockFreyrLiana.class b/bin/ab/common/block/BlockFreyrLiana.class
new file mode 100644
index 0000000..8a68737
Binary files /dev/null and b/bin/ab/common/block/BlockFreyrLiana.class differ
diff --git a/bin/ab/common/block/BlockLebethronWood.class b/bin/ab/common/block/BlockLebethronWood.class
new file mode 100644
index 0000000..2042d39
Binary files /dev/null and b/bin/ab/common/block/BlockLebethronWood.class differ
diff --git a/bin/ab/common/block/BlockLuminousFreyrLiana.class b/bin/ab/common/block/BlockLuminousFreyrLiana.class
new file mode 100644
index 0000000..7b87817
Binary files /dev/null and b/bin/ab/common/block/BlockLuminousFreyrLiana.class differ
diff --git a/bin/ab/common/block/BlockManaCharger.class b/bin/ab/common/block/BlockManaCharger.class
new file mode 100644
index 0000000..cebf3e2
Binary files /dev/null and b/bin/ab/common/block/BlockManaCharger.class differ
diff --git a/bin/ab/common/block/BlockManaContainer.class b/bin/ab/common/block/BlockManaContainer.class
new file mode 100644
index 0000000..5579d0d
Binary files /dev/null and b/bin/ab/common/block/BlockManaContainer.class differ
diff --git a/bin/ab/common/block/BlockManaCrystalCube.class b/bin/ab/common/block/BlockManaCrystalCube.class
new file mode 100644
index 0000000..f8d78d6
Binary files /dev/null and b/bin/ab/common/block/BlockManaCrystalCube.class differ
diff --git a/bin/ab/common/block/BlockModifiedFunnel.class b/bin/ab/common/block/BlockModifiedFunnel.class
new file mode 100644
index 0000000..6c03de6
Binary files /dev/null and b/bin/ab/common/block/BlockModifiedFunnel.class differ
diff --git a/bin/ab/common/block/BlockModifiedInterceptor.class b/bin/ab/common/block/BlockModifiedInterceptor.class
new file mode 100644
index 0000000..7ff9d91
Binary files /dev/null and b/bin/ab/common/block/BlockModifiedInterceptor.class differ
diff --git a/bin/ab/common/block/BlockModifiedRetainer.class b/bin/ab/common/block/BlockModifiedRetainer.class
new file mode 100644
index 0000000..7313b4d
Binary files /dev/null and b/bin/ab/common/block/BlockModifiedRetainer.class differ
diff --git a/bin/ab/common/block/BlockTerraFarmland.class b/bin/ab/common/block/BlockTerraFarmland.class
new file mode 100644
index 0000000..2f0e044
Binary files /dev/null and b/bin/ab/common/block/BlockTerraFarmland.class differ
diff --git a/bin/ab/common/block/subtile/ABSubTileSignature.class b/bin/ab/common/block/subtile/ABSubTileSignature.class
new file mode 100644
index 0000000..8b5bff7
Binary files /dev/null and b/bin/ab/common/block/subtile/ABSubTileSignature.class differ
diff --git a/bin/ab/common/block/subtile/SubTileAncientAlphirine.class b/bin/ab/common/block/subtile/SubTileAncientAlphirine.class
new file mode 100644
index 0000000..a4b4f06
Binary files /dev/null and b/bin/ab/common/block/subtile/SubTileAncientAlphirine.class differ
diff --git a/bin/ab/common/block/subtile/SubTileAngryMallos.class b/bin/ab/common/block/subtile/SubTileAngryMallos.class
new file mode 100644
index 0000000..dcd6c9d
Binary files /dev/null and b/bin/ab/common/block/subtile/SubTileAngryMallos.class differ
diff --git a/bin/ab/common/block/subtile/SubTileAspecolus.class b/bin/ab/common/block/subtile/SubTileAspecolus.class
new file mode 100644
index 0000000..a6fd31d
Binary files /dev/null and b/bin/ab/common/block/subtile/SubTileAspecolus.class differ
diff --git a/bin/ab/common/block/subtile/SubTileDictarius.class b/bin/ab/common/block/subtile/SubTileDictarius.class
new file mode 100644
index 0000000..3040d48
Binary files /dev/null and b/bin/ab/common/block/subtile/SubTileDictarius.class differ
diff --git a/bin/ab/common/block/tile/TileABSpreader.class b/bin/ab/common/block/tile/TileABSpreader.class
new file mode 100644
index 0000000..4d8f6ee
Binary files /dev/null and b/bin/ab/common/block/tile/TileABSpreader.class differ
diff --git a/bin/ab/common/block/tile/TileAgglomerationPlate.class b/bin/ab/common/block/tile/TileAgglomerationPlate.class
new file mode 100644
index 0000000..2c2c5f3
Binary files /dev/null and b/bin/ab/common/block/tile/TileAgglomerationPlate.class differ
diff --git a/bin/ab/common/block/tile/TileCorporeaCatalyst.class b/bin/ab/common/block/tile/TileCorporeaCatalyst.class
new file mode 100644
index 0000000..67281eb
Binary files /dev/null and b/bin/ab/common/block/tile/TileCorporeaCatalyst.class differ
diff --git a/bin/ab/common/block/tile/TileCorporeaInterrupter.class b/bin/ab/common/block/tile/TileCorporeaInterrupter.class
new file mode 100644
index 0000000..73d76e2
Binary files /dev/null and b/bin/ab/common/block/tile/TileCorporeaInterrupter.class differ
diff --git a/bin/ab/common/block/tile/TileLebethronCore.class b/bin/ab/common/block/tile/TileLebethronCore.class
new file mode 100644
index 0000000..8eb58ee
Binary files /dev/null and b/bin/ab/common/block/tile/TileLebethronCore.class differ
diff --git a/bin/ab/common/block/tile/TileManaCharger.class b/bin/ab/common/block/tile/TileManaCharger.class
new file mode 100644
index 0000000..5e23020
Binary files /dev/null and b/bin/ab/common/block/tile/TileManaCharger.class differ
diff --git a/bin/ab/common/block/tile/TileManaContainer.class b/bin/ab/common/block/tile/TileManaContainer.class
new file mode 100644
index 0000000..d0be1b5
Binary files /dev/null and b/bin/ab/common/block/tile/TileManaContainer.class differ
diff --git a/bin/ab/common/block/tile/TileManaCrystalCube.class b/bin/ab/common/block/tile/TileManaCrystalCube.class
new file mode 100644
index 0000000..bf35c85
Binary files /dev/null and b/bin/ab/common/block/tile/TileManaCrystalCube.class differ
diff --git a/bin/ab/common/block/tile/TileModifiedCorporeaFunnel.class b/bin/ab/common/block/tile/TileModifiedCorporeaFunnel.class
new file mode 100644
index 0000000..9a1eb25
Binary files /dev/null and b/bin/ab/common/block/tile/TileModifiedCorporeaFunnel.class differ
diff --git a/bin/ab/common/block/tile/TileModifiedInterceptor.class b/bin/ab/common/block/tile/TileModifiedInterceptor.class
new file mode 100644
index 0000000..0ff6cab
Binary files /dev/null and b/bin/ab/common/block/tile/TileModifiedInterceptor.class differ
diff --git a/bin/ab/common/block/tile/TileModifiedRetainer.class b/bin/ab/common/block/tile/TileModifiedRetainer.class
new file mode 100644
index 0000000..8d60716
Binary files /dev/null and b/bin/ab/common/block/tile/TileModifiedRetainer.class differ
diff --git a/bin/ab/common/core/proxy/CommonProxy.class b/bin/ab/common/core/proxy/CommonProxy.class
new file mode 100644
index 0000000..c0cd1e5
Binary files /dev/null and b/bin/ab/common/core/proxy/CommonProxy.class differ
diff --git a/bin/ab/common/entity/EntityAdvancedSpark.class b/bin/ab/common/entity/EntityAdvancedSpark.class
new file mode 100644
index 0000000..b8b0752
Binary files /dev/null and b/bin/ab/common/entity/EntityAdvancedSpark.class differ
diff --git a/bin/ab/common/entity/EntityManaVine.class b/bin/ab/common/entity/EntityManaVine.class
new file mode 100644
index 0000000..07a8d86
Binary files /dev/null and b/bin/ab/common/entity/EntityManaVine.class differ
diff --git a/bin/ab/common/entity/EntityNebulaBlaze.class b/bin/ab/common/entity/EntityNebulaBlaze.class
new file mode 100644
index 0000000..1a90872
Binary files /dev/null and b/bin/ab/common/entity/EntityNebulaBlaze.class differ
diff --git a/bin/ab/common/integration/corporea/CustomWrappedIInventory.class b/bin/ab/common/integration/corporea/CustomWrappedIInventory.class
new file mode 100644
index 0000000..75cef5a
Binary files /dev/null and b/bin/ab/common/integration/corporea/CustomWrappedIInventory.class differ
diff --git a/bin/ab/common/integration/corporea/EventCorporeaHandler.class b/bin/ab/common/integration/corporea/EventCorporeaHandler.class
new file mode 100644
index 0000000..3d871d1
Binary files /dev/null and b/bin/ab/common/integration/corporea/EventCorporeaHandler.class differ
diff --git a/bin/ab/common/integration/corporea/ICorporeaInterrupter.class b/bin/ab/common/integration/corporea/ICorporeaInterrupter.class
new file mode 100644
index 0000000..f29a2a9
Binary files /dev/null and b/bin/ab/common/integration/corporea/ICorporeaInterrupter.class differ
diff --git a/bin/ab/common/item/ItemABResource.class b/bin/ab/common/item/ItemABResource.class
new file mode 100644
index 0000000..a8e20d9
Binary files /dev/null and b/bin/ab/common/item/ItemABResource.class differ
diff --git a/bin/ab/common/item/ItemAdvancedSpark.class b/bin/ab/common/item/ItemAdvancedSpark.class
new file mode 100644
index 0000000..e550c4e
Binary files /dev/null and b/bin/ab/common/item/ItemAdvancedSpark.class differ
diff --git a/bin/ab/common/item/ItemAntigravityCharm.class b/bin/ab/common/item/ItemAntigravityCharm.class
new file mode 100644
index 0000000..bd39a5d
Binary files /dev/null and b/bin/ab/common/item/ItemAntigravityCharm.class differ
diff --git a/bin/ab/common/item/ItemBlackHalo.class b/bin/ab/common/item/ItemBlackHalo.class
new file mode 100644
index 0000000..813355d
Binary files /dev/null and b/bin/ab/common/item/ItemBlackHalo.class differ
diff --git a/bin/ab/common/item/ItemMod.class b/bin/ab/common/item/ItemMod.class
new file mode 100644
index 0000000..2066c7f
Binary files /dev/null and b/bin/ab/common/item/ItemMod.class differ
diff --git a/bin/ab/common/item/block/ItemBlockBase.class b/bin/ab/common/item/block/ItemBlockBase.class
new file mode 100644
index 0000000..d8de429
Binary files /dev/null and b/bin/ab/common/item/block/ItemBlockBase.class differ
diff --git a/bin/ab/common/item/equipment/ItemBauble.class b/bin/ab/common/item/equipment/ItemBauble.class
new file mode 100644
index 0000000..5e7ab04
Binary files /dev/null and b/bin/ab/common/item/equipment/ItemBauble.class differ
diff --git a/bin/ab/common/item/equipment/ItemFreyrSlingshot.class b/bin/ab/common/item/equipment/ItemFreyrSlingshot.class
new file mode 100644
index 0000000..c2954af
Binary files /dev/null and b/bin/ab/common/item/equipment/ItemFreyrSlingshot.class differ
diff --git a/bin/ab/common/item/equipment/ItemManaFlower.class b/bin/ab/common/item/equipment/ItemManaFlower.class
new file mode 100644
index 0000000..3358b2a
Binary files /dev/null and b/bin/ab/common/item/equipment/ItemManaFlower.class differ
diff --git a/bin/ab/common/item/equipment/ItemMithrillMultiTool.class b/bin/ab/common/item/equipment/ItemMithrillMultiTool.class
new file mode 100644
index 0000000..6f89b10
Binary files /dev/null and b/bin/ab/common/item/equipment/ItemMithrillMultiTool.class differ
diff --git a/bin/ab/common/item/equipment/ItemMithrillRing.class b/bin/ab/common/item/equipment/ItemMithrillRing.class
new file mode 100644
index 0000000..e25b3fe
Binary files /dev/null and b/bin/ab/common/item/equipment/ItemMithrillRing.class differ
diff --git a/bin/ab/common/item/equipment/ItemNebulaBlaze.class b/bin/ab/common/item/equipment/ItemNebulaBlaze.class
new file mode 100644
index 0000000..798d099
Binary files /dev/null and b/bin/ab/common/item/equipment/ItemNebulaBlaze.class differ
diff --git a/bin/ab/common/item/equipment/ItemNebulaRing.class b/bin/ab/common/item/equipment/ItemNebulaRing.class
new file mode 100644
index 0000000..41f4efe
Binary files /dev/null and b/bin/ab/common/item/equipment/ItemNebulaRing.class differ
diff --git a/bin/ab/common/item/equipment/ItemSpaceBlade.class b/bin/ab/common/item/equipment/ItemSpaceBlade.class
new file mode 100644
index 0000000..2fc6adb
Binary files /dev/null and b/bin/ab/common/item/equipment/ItemSpaceBlade.class differ
diff --git a/bin/ab/common/item/equipment/ItemTerraHoe.class b/bin/ab/common/item/equipment/ItemTerraHoe.class
new file mode 100644
index 0000000..5418d6d
Binary files /dev/null and b/bin/ab/common/item/equipment/ItemTerraHoe.class differ
diff --git a/bin/ab/common/lib/register/BlockListAB.class b/bin/ab/common/lib/register/BlockListAB.class
new file mode 100644
index 0000000..064918b
Binary files /dev/null and b/bin/ab/common/lib/register/BlockListAB.class differ
diff --git a/bin/ab/common/lib/register/EntityListAB.class b/bin/ab/common/lib/register/EntityListAB.class
new file mode 100644
index 0000000..b319a7c
Binary files /dev/null and b/bin/ab/common/lib/register/EntityListAB.class differ
diff --git a/bin/ab/common/lib/register/FlowerRegister.class b/bin/ab/common/lib/register/FlowerRegister.class
new file mode 100644
index 0000000..46a25e3
Binary files /dev/null and b/bin/ab/common/lib/register/FlowerRegister.class differ
diff --git a/bin/ab/common/lib/register/ItemListAB.class b/bin/ab/common/lib/register/ItemListAB.class
new file mode 100644
index 0000000..da91061
Binary files /dev/null and b/bin/ab/common/lib/register/ItemListAB.class differ
diff --git a/bin/ab/common/lib/register/RecipeListAB.class b/bin/ab/common/lib/register/RecipeListAB.class
new file mode 100644
index 0000000..77a2387
Binary files /dev/null and b/bin/ab/common/lib/register/RecipeListAB.class differ
diff --git a/bin/ab/common/lib/utils/Pair.class b/bin/ab/common/lib/utils/Pair.class
new file mode 100644
index 0000000..baf9911
Binary files /dev/null and b/bin/ab/common/lib/utils/Pair.class differ
diff --git a/bin/assets/ab/lang/en_US.lang b/bin/assets/ab/lang/en_US.lang
new file mode 100644
index 0000000..fa3e47c
--- /dev/null
+++ b/bin/assets/ab/lang/en_US.lang
@@ -0,0 +1,178 @@
+//Russian translate
+
+//Tab
+
+itemGroup.tabAB=Advanced Botany
+
+//Block
+
+ab.flower.ancientAlphirine.name=Ancient Alphirine
+ab.flower.dictarius.name=Dictarius
+ab.flower.aspecolus.name=Aspecolus
+tile.advancedSpreader.name=Natural Mana Spreader
+tile.ABPlate.name=Advanced Agglomeration Plate
+tile.lebethronWood.0.name=Lebethron Wood
+tile.lebethronWood.1.name=Lebethron Wood Planks
+tile.lebethronWood.2.name=Mossy Lebethron Wood Planks
+tile.lebethronWood.3.name=Glimmering Lebethron Wood
+tile.lebethronWood.4.name=Natural Core
+tile.ABManaCrystalCube.name=Mana Crystal Cube
+tile.ABManaContainer.name=Mana Container
+tile.abStorage.0.name=Block of Mithrill
+tile.ABManaCharger.name=Mana Charger
+
+//Item
+
+item.resourceAB_0.name=Mithrill
+item.resourceAB_1.name=Mithrill Nugget
+item.resourceAB_2.name=Mana Nether Star
+item.resourceAB_3.name=Air of Forgotten Lands
+item.resourceAB_4.name=Nature's gift
+item.resourceAB_5.name=Nebula Fragment
+item.resourceAB_6.name=Piece of Nebula
+item.mithrillMultiTool.name=Material Destroyer
+item.spaceBlade.name=Blade of Space
+item.advancedSpark.name=Superconductive spark
+item.mithrillManaRing.name=Mithrill Mana Ring
+item.nebulaManaRing.name=Nebula Mana Ring
+item.terraHoe.name=Terrahoe
+item.manaFlower.name=Mana Flower
+item.blackHalo.name=Black Hole Talisman Halo
+item.nebulaBlaze.name=Nebula Blaze
+item.antigravityCharm.name=Sphere of Attraction
+
+//MISC
+
+botania.category.forgotten=Connecting with the past
+ab.nei.alphirine=Ancient Alphirine
+ab.nei.advancedPlate=Advanced aggl. plate
+ab.manaCrystalCube.hud=Amount of mana in the network
+ab.manaCharger.wandHud=Mana Charger
+ab.manaContainer.hud=ManaContainer
+abmisc.swordInfo.1=Mana Beam on Attack
+abmisc.swordInfo.2=Spatial leap
+abmisc.swordInfo.3=Square Impact 3х3
+abmisc.swordInfo.4=Square Impact 5х5
+abmisc.swordInfo.5=Square Impact 7х7
+abmisc.swordFull=Maximum mana, for the coolest nerd possible!
+
+//LEXICON
+
+ab.lexicon.structure=Structure
+
+botania.knowledge.ab_forgotten=&9Forgotten&7 knowledge
+
+ab.alphirine.change=Chance of success
+ab.chance.lowest=Lowest
+ab.chance.veryLow=Very low
+ab.chance.low=Low
+ab.chance.middle=Middle
+ab.chance.high=High
+ab.chance.veryHigt=Very high
+ab.chance.highest=Highest
+
+ab.name.alpherine.craft=Ancient Alphirine
+
+botania.entry.ancientAlphirine=Ancient Alphirine
+botania.taglane.ancientAlphirine=Turn the world upside down, and shake out the interesting stuff!
+botania.page.ancientAlphirine0=A flower capable of gathering knowledge from the past straight from the soil!
With his help, you can learn the secrets of the Elves, or perhaps even the forgotten knowledge of everyone. Throw your Lexicon beside him, and he will write down everything he knows.
+botania.page.ancientAlphirine1=ust knowledge is not enough, you need the resources of those times!
To get them, all you have to do is drop an object near it, and Alfirin will try to find an analogue from the past. Unfortunately, he does not always succeed the first time.
+botania.page.ancientAlphirine.petalCraft=The smartest flower, by the way
+botania.page.ancientAlphirine.alphirineCraft=DO NOT BREATHE IN!
+
+botania.entry.advancedPlate=Advanced. aggl. plate
+botania.tagline.advancedPlate=Created from the drawings of the dwarfs of Nidavellir
+botania.page.advancedPlate0=The improved agglomeration board is the previous board, with a number of innovations.
One major change is the creation of new metals or just materials, and another equally important one is the increased operational experience.
+botania.page.advancedPlate.craft=The Engineering Revolution
+botania.page.advancedPlate.structure=A.A. plate
+botania.page.advancedPlate.abCraft0=Creating everyone's favorite terrastal
+botania.page.advancedPlate.abCraft1=Burn My Star...
+
+botania.entry.lebethronWood=Leberton Wood
+botania.tagline.lebethronWood=Straight out of the past! It's so old-school!
+botania.page.lebethronWood0=Leberton Wood - A powerful conduit of mana that the Elves were able to create using the resources of our land. Unfortunately, when the Elves were sent back to Alfheim, the wood of Leberton was lost forever.
Using Ancient Alphyrin and Dreamwood - you can revive this mighty tree!
+botania.page.lebethronWood.alphirineCraft=A Greenish Wonder
+botania.page.lebethronWood1=The natural core is capable of creating a tree, with endless foliage, neither fire nor Chewing Dew can stop its growth!
The core itself will not create a tree, it needs to be given any leaves, as it does not have its own, and also needs a trunk - more on the next page.
+botania.page.lebethronWood.craft0=Recipe for Creating
+botania.page.lebethronWood.structure=Natural Core
+
+botania.entry.lebethronSpreader=Natural Mana Spreader
+botania.tagline.lebethronSpreader=Deliver a ton of mana? No problem!
+botania.page.lebethronSpreader0=A natural mana dispenser designed for true mana control specialists! Thanks to it, you can deliver a huge amount of mana in an insanely short amount of time, which allows you to fully unleash the effectiveness of flowers.
Also... HE IS LIGHTING!!!
+botania.page.lebethronSpreader.craft=You can never have too much mana
+
+botania.entry.mithrill=Mithrill
+botania.tagline.mithrill=Mighty and indestructible metal!
+botania.page.mithrill0=Mifril - stands out for its strength among other metals, or rather its lack of it, as it can not get any damage.
The process of creating it is not the easiest, because it requires a very large amount of mana.
+botania.page.mithrill.abCraft=Where's all my mana!?
+botania.page.mithrill1=The Material Destroyer is a harsh tool, capable of breaking any block in a short period of time. Its speed is so high that it was necessary to create a *Fuse* in it - that is, to turn it off/on.
+botania.page.mithrill.craft=Break this world
+
+botania.entry.manaContainer=Mana Container
+botania.tagline.manaContainer=Mana Vault for Mad Men
+botania.page.manaContainer0=A mana container is a levitating piece of lifestone with mithril on the corners that can hold as much mana as 64 standard pools. YES YES, that's exactly how much, not a drop less!
+botania.page.manaContainer.craft=mana... Mana... MANA!!!
+botania.page.manaContainer1=Superconductive Spark - known as the fastest spark in the wild west! No kidding, the Elves used to use it, distilling mana from different points.
The recipe for creation is long lost, so the only way to get it is Ancient Alphyrin.
+botania.page.manaContainer.alphirineCraft=The speed of sound is you?
+
+botania.entry.manaCrystalCube=Mana Crystal Cube
+botania.tagline.manaCrystalCube=Every nerd's personal mana manager
+botania.page.manaCrystalCube0=It's not always convenient to run around and check every mana cube, wondering how much there is in the end. That's what the Crystal Mana Cube was designed and created for!
It shows the mana of all pools or other accumulators that have a spark.
+botania.page.manaCrystalCube.craft=Where's the spark?
+
+botania.entry.terraHoe=Terrahoe
+botania.tagline.terraHoe=Self-help training for plants
+botania.page.terraHoe0=The standard way of harvesting - gets boring with time. Exactly with this problem, will help Terrahoe, or rather its unique ability to transform the soil, in a more fertile and automated.
The harvest in the new soil gathers itself after a certain period of time!
+botania.page.terraHoe.craft=Auto Harvest
+
+botania.entry.manaRings=Mana Rings
+botania.tagline.manaRings=Take more mana with you!
+botania.page.manaRings0=Mana rings are highly sought-after accessories for nerfs. And it is not always convenient to take several, but everything is limited by the properties of the material from which the ring was made.
Mithrill and Nebula Fragment, excellent analogues to the usual terrastal or manastal.
+botania.page.manaRings.craft0=8 mana pools!
+botania.page.manaRings.craft1=48 mana pools!
+
+botania.entry.manaFlower=Mana Flower
+botania.tagline.manaFlower=It smells like mana!
+botania.page.manaFlower0=Nature's Gift - the name speaks for itself. It is usually used to create more advanced colors that work with mana.
Но, пару неудачных экспериментов способствовали созданию - Цветок маны. ВНИМАНИЕ! НИ ОДИН ЭЛЬФ НЕ УМЕРATTENTION! NOT A SINGLE ELF DIED.
+botania.page.manaFlower.craft=Economy is the best friend
+botania.page.manaFlower.alphirineCraft=It's a beautiful flower
+
+botania.entry.mithrillSword=Blade of Space
+botania.tagline.mithrillSword=Weapons capable of making jerks and doing damage
+botania.page.mithrillSword0=Blade of Space is a magical weapon that requires mana to improve its abilities as well as damage.
+botania.page.mithrillSword.craft=Cut them all up!!!
+
+botania.entry.dictarius=Dictarius
+botania.tagline.dictarius=Turns everything around in one word, be careful
+botania.page.dictarius0=Dictarius - the most open flower of all, which tries to express its opinion, but more often than not, it tries to force those around it to take some action.
Overall, if you don't listen to it, it's quite a great way to extract mana! The more listeners around him, the more mana.
+botania.page.dictarius.petalCraft=Not the best conversationalist at night
+
+botania.entry.aspecolus=Aspecolus
+botania.tagline.aspecolus=Will gladly get inside your head
+botania.page.aspecolus0=Aspecolus - at first glance, it looks like a standard flower. But as soon as you get close, you feel as if someone is digging into your head! It's not exactly pleasant...
But, the Taumoturges found something special about it, and now use the miraculous flower as a forced meditation.
+botania.page.aspecolus.petalCraft=Mini psychologist
+
+botania.entry.nebula=Nebula
+botania.tagline.nebula=The connection to the cosmos
+botania.page.nebula0=A nebula fragment is a material filled with part of the power of space. It allows you to create instruments and weapons that are unearthly in power.
+botania.page.nebula.abCraft=The greater the power, the greater the responsibility
+
+botania.entry.nebulaBlaze=Nebula Blaze
+botania.tagline.nebulaBlaze=The Foggy Mayhem
+botania.page.nebulaBlaze0=Nebula Blaze - is a magical weapon that is used when someone is really getting to you. Just point it at the target and fire the projectile! If you're not good at pointing, the projectile will help you a little!
+botania.page.nebulaBlaze.craft=Space throw?
+
+botania.entry.blackHalo=Black Hole Talisman Halo
+botania.tagline.blackHalo=The Master of Black Holes
+botania.page.blackHalo0=Circular Black Hole Talisman - allows you to wear 12 black hole talismans in 1 slot! This allows you to comfortably go to the mine and not only.
+botania.page.blackHalo.craft=A stonemason's dream
+
+botania.entry.antigravityCharm=Sphere of Attraction
+botania.tagline.antigravityCharm=What is physics?
+botania.page.antigravityCharm0=The sphere of attraction is a mystical tool capable of stopping the movement of any falling blocks.
Now you can safely walk around without the fear that you will be crushed by sand, or anvil.
+botania.page.antigravityCharm.craft=1 : 0 in favor of Minecrafters
+
+botania.entry.manaCharger=Mana Charger
+botania.tagline.manaCharger=Shall we recharge?
+botania.page.manaCharger0=The mana charger is a device that allows you to charge up to 4 portable mana sources at once, as well as to discharge one of them.
To start the charger, you must bind a mana source to it, such as a Mana Pool or Mana Container
+botania.page.manaCharger.craft=Quick Charge
diff --git a/bin/assets/ab/lang/ru_RU.lang b/bin/assets/ab/lang/ru_RU.lang
new file mode 100644
index 0000000..ebc54b1
--- /dev/null
+++ b/bin/assets/ab/lang/ru_RU.lang
@@ -0,0 +1,179 @@
+//Russian translate
+
+//Tab
+
+itemGroup.tabAB=Advanced Botany
+
+//Block
+
+ab.flower.ancientAlphirine.name=Древний Альфирин
+ab.flower.dictarius.name=Диктариус
+ab.flower.aspecolus.name=Аспеколус
+tile.advancedSpreader.name=Природный распространитель маны
+tile.ABPlate.name=Улучшенная агломерационная плита
+tile.lebethronWood.0.name=Древесина Лебертона
+tile.lebethronWood.1.name=Доски из древесины Лебертона
+tile.lebethronWood.2.name=Замшелые доски из древесины Лебертона
+tile.lebethronWood.3.name=Светящаяся древесина Лебертона
+tile.lebethronWood.4.name=Природное ядро
+tile.ABManaCrystalCube.name=Кристаллический куб маны
+tile.ABManaContainer.name=Контейнер маны
+tile.abStorage.0.name=Блок мифрилла
+tile.ABManaCharger.name=Зарядник маны
+
+//Item
+
+item.resourceAB_0.name=Мифрилл
+item.resourceAB_1.name=Мифрилловый самородок
+item.resourceAB_2.name=Адская звезда маны
+item.resourceAB_3.name=Воздух забытых земель
+item.resourceAB_4.name=Дар природы
+item.resourceAB_5.name=Фрагмент туманности
+item.resourceAB_6.name=Кусочек туманности
+item.mithrillMultiTool.name=Материальный разрушитель
+item.spaceBlade.name=Клинок пространства
+item.advancedSpark.name=Сверхпроводимая искра
+item.mithrillManaRing.name=Мифрилловое кольцо маны
+item.nebulaManaRing.name=Туманное кольцо маны
+item.terraHoe.name=Террамотыга
+item.manaFlower.name=Цветок маны
+item.blackHalo.name=Круговой талисман черной дыры
+item.nebulaBlaze.name=Удар Небулы
+item.antigravityCharm.name=Сфера притяжения
+
+//MISC
+
+botania.category.forgotten=Связь с прошлым
+ab.nei.alphirine=Древний альфирин
+ab.nei.advancedPlate=Улучшенная аглом. плита
+ab.manaCrystalCube.hud=Количество маны в сети
+ab.manaCharger.wandHud=Зарядник маны
+ab.manaContainer.hud=Мана контейнер
+abmisc.swordInfo.1=Мана-луч при атаке
+abmisc.swordInfo.2=Пространственный скачок
+abmisc.swordInfo.3=Удар по площади 3х3
+abmisc.swordInfo.4=Удар по площади 5х5
+abmisc.swordInfo.5=Удар по площади 7х7
+abmisc.swordFull=Максимум маны, для максимально крутого ботаника!
+
+//LEXICON
+
+ab.lexicon.structure=Структура
+
+botania.knowledge.ab_forgotten=&9Забытые&7 знания
+
+ab.alphirine.change=Шанс успеха
+ab.chance.lowest=Низший
+ab.chance.veryLow=Очень низкий
+ab.chance.low=Низкий
+ab.chance.middle=Средний
+ab.chance.high=Высокий
+ab.chance.veryHigt=Очень высокий
+ab.chance.highest=Высочайший
+
+ab.name.alpherine.craft=Древний Альфирин
+
+botania.entry.ancientAlphirine=Древний Альфирин
+botania.taglane.ancientAlphirine=Самый умный цветок, между прочим
+botania.page.ancientAlphirine0=Цветок способный собирать знания из прошлого прямиком из почвы!
С помощью него, вы сможете узнать тайны Эльфов, а может и вовсе - всеми забытые знания. Бросьте свою Лексику рядом с ним, и он запишет все, что знает.
+botania.page.ancientAlphirine1=Просто знаний не достаточно, нужны ресурсы тех времен!
Чтобы получить их, достаточно бросить предмет около него, и Альфирин будет пытаться найти аналог из прошлого. К сожалению, не всегда у него выходит сделать это с первого раза.
+botania.page.ancientAlphirine.petalCraft=Переверни мир, и вытряхни из него интересные вещи!
+botania.page.ancientAlphirine.alphirineCraft=НЕ ВДЫХАТЬ!
+
+botania.entry.advancedPlate=Улуч. аглом. плита
+botania.tagline.advancedPlate=Создано по чертежам карликов с Нидавеллира
+botania.page.advancedPlate0=Улучшенная агломерационная плита - это преждняя плита, с рядом нововведений.
Одно из главных изменений является - создание новых металлов или просто материалов, и ещё одно не менее важное - повышенный опыт эксплуатации.
+botania.page.advancedPlate.craft=Инженерная революция
+botania.page.advancedPlate.structure=У.А. плита
+botania.page.advancedPlate.abCraft0=Создание всеми любимой террастали
+botania.page.advancedPlate.abCraft1=Гори моя звездочка...
+
+botania.entry.lebethronWood=Древесина Лебертона
+botania.tagline.lebethronWood=Прямиком из прошлого! Аж олдскулы сводит!
+botania.page.lebethronWood0=Лебертон - мощный проводник маны, который смогли создать Эльфы используя ресурсы нашей земли. К несчастью, при отправке Эльфов обратно в Альфхейм, древесина Лебертона была навсегда утеряна.
Используя Древний Альфирин и древесину Мечтаний - можно возродить это могущественное дерево!
+botania.page.lebethronWood.alphirineCraft=Зеленоватое чудо
+botania.page.lebethronWood1=Природное ядро способно создать дерево, с бесконечной листвой, ни огонь, ни Жевательная роса не смогут остановить её рост!
Само по себе ядро с ходу не создаст дерево, ему требуется дать любую листву, так как своей он не имеет, а также необходим ствол - подробнее на следующей странице.
+botania.page.lebethronWood.craft0=Рецепт создания
+botania.page.lebethronWood.structure=Природное ядро
+
+botania.entry.lebethronSpreader=Природный распр. маны
+botania.tagline.lebethronSpreader=Доставить тонну маны? Без проблем!
+botania.page.lebethronSpreader0=Природный распространитель маны создан для настоящих специалистов по управлению маной! Благодаря ему, можно доставлять огромное количество маны за безумно малое время, что позволяет полностью раскрыть эффективность у цветов.
А ещё... ОН СВЕТИТСЯ!!!
+botania.page.lebethronSpreader.craft=Маны много не бывает
+
+botania.entry.mithrill=Мифрилл
+botania.tagline.mithrill=Могучий и несокрушимый металл!
+botania.page.mithrill0=Мифрилл - выделяется своей прочностью среди других металлов, точнее ее отсутствием, так как он не может получить какие-либо повреждения.
Процесс его создания не из самых легких, ведь он требует весьма большое количество маны.
+botania.page.mithrill.abCraft=А где вся моя мана!??
+botania.page.mithrill1=Материальный Разрушитель - суровый инструмент, способный ломать любые блоки за краткий промежуток времени. Его скорость настолька высока, что было необходимо создать в нем *Предохранитель* - то есть выключать/включать его.
+botania.page.mithrill.craft=Сломай этот мир
+
+botania.entry.manaContainer=Мана контейнер
+botania.tagline.manaContainer=Хранилище маны для безумцев
+botania.page.manaContainer0=Мана контейнер - левитирующий кусок жизнекамня с мифриллом по углам, которое способно вмещать в себя маны как 64 стандартных бассейнов. ДА ДА, именно столько, ни каплей меньше!
+botania.page.manaContainer.craft=мана.. Мана... МАНА!!
+botania.page.manaContainer1=Сверхпроводимая искра - известна как самая быстрая искра на диком западе! Если без шуток, такими пользовались Эльфы, перегоняя ману из разных точек.
Рецепт создания давно утерян, поэтому единственный способ получить - Древний Альфирин.
+botania.page.manaContainer.alphirineCraft=Скорость звука - это ты?
+
+botania.entry.manaCrystalCube=Кристаллический куб маны
+botania.tagline.manaCrystalCube=Личный менеджер маны каждого ботаника
+botania.page.manaCrystalCube0=Не всегда удобно бегать и сверять каждый накопитель маны, думая сколько в итоге имеется. Для этого и был спроектирован и создан - Кристаллический куб маны!
Он показывает ману всех бассейнов или иных накопителей, у которых имеется искра.
+botania.page.manaCrystalCube.craft=А где искра?
+
+botania.entry.terraHoe=Террамотыга
+botania.tagline.terraHoe=Тренинг по самостоятельности для растений
+botania.page.terraHoe0=Стандартный способ сбора урожая - надоедает со временем. Именно с этой проблемой, поможет Террамотыга, а точнее ее уникальная способность преображать почву, в более плодородную и автоматизированную.
Урожай на новой почве собирается сам, спустя определенное время!
+botania.page.terraHoe.craft=Авто-урожай
+
+botania.entry.manaRings=Кольца маны
+botania.tagline.manaRings=Бери с собой побольше маны!
+botania.page.manaRings0=Кольца маны - очень востребованные аксессуары у ботаников. И не всегда удобно брать несколько, но все ограничивается свойствами материала, из которого было сделано кольцо.
Мифрилл и Фрагмент туманности, отличные аналоги привычной террастали или манастали.
+botania.page.manaRings.craft0=8 бассейнов маны!
+botania.page.manaRings.craft1=48 бассейнов маны!
+
+botania.entry.manaFlower=Цветок маны
+botania.tagline.manaFlower=Пахнет маной!
+botania.page.manaFlower0=Дар природы - название говорит само за себя. Обычно его используют для создания более продвинутых цветов, работающих с маной.
Но, пару неудачных экспериментов способствовали созданию - Цветок маны. ВНИМАНИЕ! НИ ОДИН ЭЛЬФ НЕ УМЕР
+botania.page.manaFlower.craft=Экономия - лучший друг
+botania.page.manaFlower.alphirineCraft=Красивый цветочек
+
+botania.entry.mithrillSword=Клинок пространства
+botania.tagline.mithrillSword=Оружие, способное делать рывки, и наносить ущерб
+botania.page.mithrillSword0=Клинок пространства - это магическое оружие, требующее ману для улучшения своих способностей, а также урона.
+botania.page.mithrillSword.craft=Порежь их всех!!!
+
+botania.entry.dictarius=Диктариус
+botania.tagline.dictarius=Перевернет одним словом все вокруг, будьте осторожны
+botania.page.dictarius0=Диктариус - самый открытый цветок из всех, который пытается высказать свое мнение, но чаще всего, он пытается принудить окружающих совершить какое-либо действие.
В целом, если не слушать его, то вполне отличный способ добычи маны! Чем больше слушателей вокруг него, тем больше маны.
+botania.page.dictarius.petalCraft=Не самый лучший собеседник ночью
+
+botania.entry.aspecolus=Аспеколус
+botania.tagline.aspecolus=С радостью залезет в вашу голову
+botania.page.aspecolus0=Аспеколус - на первый взгяд стандартный цветок. Но стоит только подойти ближе, вы сразу почувствуете, словно кто-то роется в вашей голове! Это не совсем приятно...
Но, Таумотурги нашли в нем что-то особенное, и теперь используют чудо-цветок в качестве принудительной медитации.
+botania.page.aspecolus.petalCraft=Мини - психолог
+
+botania.entry.nebula=Туманность
+botania.tagline.nebula=Связь с космосом
+botania.page.nebula0=Фрагмент туманности - это материал наполненный частью силы космоса. Это позволяет создавать неземные по мощностью инструменты и оружие.
+botania.page.nebula.abCraft=Чем больше сила, тем больше ответсвенность
+
+botania.entry.nebulaBlaze=Удар Небулы
+botania.tagline.nebulaBlaze=Туманный беспредел
+botania.page.nebulaBlaze0=Удар Небулы - это магическое оружие, которое используется в случаях, когда вас кто-то сильно достает. Просто наведитесь на цель и выпустите снаряд! Если с наводкой у вас плохо, то снаряд вам слегка поможет!
+botania.page.nebulaBlaze.craft=Космическая вертуха?
+
+botania.entry.blackHalo=Круговой тал. чер. дыры
+botania.tagline.blackHalo=Властелин черных дыр
+botania.page.blackHalo0=Круговой талисман черной дыры - позволяет носить 12 талисманов черной дыры в 1 слоте! Это позволяет комфортно отправляться в шахту и не только.
+botania.page.blackHalo.craft=Мечта каменщика
+
+botania.entry.antigravityCharm=Сфера притяжения
+botania.tagline.antigravityCharm=Что такое физика?
+botania.page.antigravityCharm0=Сфера притяжения - это мистический инструмент, способный прекратить движение любых падающих блоков.
Теперь вам можно спокойно гулять, не боясь, что вас придавит песком, или наковальней.
+botania.page.antigravityCharm.craft=1 : 0 в пользу Майнкрафтеров
+
+botania.entry.manaCharger=Зарядник маны
+botania.tagline.manaCharger=Подзарядимся?
+botania.page.manaCharger0=Зарядник маны - это устройство позволяющее заряжать до 4 портативных источников маны одновременно, а также разряжать один из них.
Чтобы запустить работу зарядника, нужно привязать к нему источник маны, например: Бассейн маны или Контейнер маны
+botania.page.manaCharger.craft=Быстрая зарядка
+
diff --git a/bin/assets/ab/textures/blocks/CorporeaInterrupter0.png b/bin/assets/ab/textures/blocks/CorporeaInterrupter0.png
new file mode 100644
index 0000000..ce3cfb5
Binary files /dev/null and b/bin/assets/ab/textures/blocks/CorporeaInterrupter0.png differ
diff --git a/bin/assets/ab/textures/blocks/CorporeaInterrupter1.png b/bin/assets/ab/textures/blocks/CorporeaInterrupter1.png
new file mode 100644
index 0000000..ff53d2f
Binary files /dev/null and b/bin/assets/ab/textures/blocks/CorporeaInterrupter1.png differ
diff --git a/bin/assets/ab/textures/blocks/abStorage_0.png b/bin/assets/ab/textures/blocks/abStorage_0.png
new file mode 100644
index 0000000..39e964d
Binary files /dev/null and b/bin/assets/ab/textures/blocks/abStorage_0.png differ
diff --git a/bin/assets/ab/textures/blocks/advancedPlate_0.png b/bin/assets/ab/textures/blocks/advancedPlate_0.png
new file mode 100644
index 0000000..9b4e4f2
Binary files /dev/null and b/bin/assets/ab/textures/blocks/advancedPlate_0.png differ
diff --git a/bin/assets/ab/textures/blocks/advancedPlate_1.png b/bin/assets/ab/textures/blocks/advancedPlate_1.png
new file mode 100644
index 0000000..17ea058
Binary files /dev/null and b/bin/assets/ab/textures/blocks/advancedPlate_1.png differ
diff --git a/bin/assets/ab/textures/blocks/advancedPlate_2.png b/bin/assets/ab/textures/blocks/advancedPlate_2.png
new file mode 100644
index 0000000..a05eb00
Binary files /dev/null and b/bin/assets/ab/textures/blocks/advancedPlate_2.png differ
diff --git a/bin/assets/ab/textures/blocks/corporeaCatalyst.png b/bin/assets/ab/textures/blocks/corporeaCatalyst.png
new file mode 100644
index 0000000..f575543
Binary files /dev/null and b/bin/assets/ab/textures/blocks/corporeaCatalyst.png differ
diff --git a/bin/assets/ab/textures/blocks/corporea_downside.png b/bin/assets/ab/textures/blocks/corporea_downside.png
new file mode 100644
index 0000000..ed2052d
Binary files /dev/null and b/bin/assets/ab/textures/blocks/corporea_downside.png differ
diff --git a/bin/assets/ab/textures/blocks/flower_ancientAlphirine.png b/bin/assets/ab/textures/blocks/flower_ancientAlphirine.png
new file mode 100644
index 0000000..614196f
Binary files /dev/null and b/bin/assets/ab/textures/blocks/flower_ancientAlphirine.png differ
diff --git a/bin/assets/ab/textures/blocks/flower_aspecolus.png b/bin/assets/ab/textures/blocks/flower_aspecolus.png
new file mode 100644
index 0000000..c9ff3fc
Binary files /dev/null and b/bin/assets/ab/textures/blocks/flower_aspecolus.png differ
diff --git a/bin/assets/ab/textures/blocks/flower_dictarius.png b/bin/assets/ab/textures/blocks/flower_dictarius.png
new file mode 100644
index 0000000..791c309
Binary files /dev/null and b/bin/assets/ab/textures/blocks/flower_dictarius.png differ
diff --git a/bin/assets/ab/textures/blocks/freyrLiana.png b/bin/assets/ab/textures/blocks/freyrLiana.png
new file mode 100644
index 0000000..ad06534
Binary files /dev/null and b/bin/assets/ab/textures/blocks/freyrLiana.png differ
diff --git a/bin/assets/ab/textures/blocks/freyrLuminousLiana.png b/bin/assets/ab/textures/blocks/freyrLuminousLiana.png
new file mode 100644
index 0000000..bf10d7a
Binary files /dev/null and b/bin/assets/ab/textures/blocks/freyrLuminousLiana.png differ
diff --git a/bin/assets/ab/textures/blocks/funnel_rune.png b/bin/assets/ab/textures/blocks/funnel_rune.png
new file mode 100644
index 0000000..fcbc9c5
Binary files /dev/null and b/bin/assets/ab/textures/blocks/funnel_rune.png differ
diff --git a/bin/assets/ab/textures/blocks/interceptor_rune.png b/bin/assets/ab/textures/blocks/interceptor_rune.png
new file mode 100644
index 0000000..f400d27
Binary files /dev/null and b/bin/assets/ab/textures/blocks/interceptor_rune.png differ
diff --git a/bin/assets/ab/textures/blocks/interrupter_rune.png b/bin/assets/ab/textures/blocks/interrupter_rune.png
new file mode 100644
index 0000000..7b0b16c
Binary files /dev/null and b/bin/assets/ab/textures/blocks/interrupter_rune.png differ
diff --git a/bin/assets/ab/textures/blocks/lebethronWood_0.png b/bin/assets/ab/textures/blocks/lebethronWood_0.png
new file mode 100644
index 0000000..7cb02a4
Binary files /dev/null and b/bin/assets/ab/textures/blocks/lebethronWood_0.png differ
diff --git a/bin/assets/ab/textures/blocks/lebethronWood_1.png b/bin/assets/ab/textures/blocks/lebethronWood_1.png
new file mode 100644
index 0000000..803b532
Binary files /dev/null and b/bin/assets/ab/textures/blocks/lebethronWood_1.png differ
diff --git a/bin/assets/ab/textures/blocks/lebethronWood_2.png b/bin/assets/ab/textures/blocks/lebethronWood_2.png
new file mode 100644
index 0000000..97a0cfe
Binary files /dev/null and b/bin/assets/ab/textures/blocks/lebethronWood_2.png differ
diff --git a/bin/assets/ab/textures/blocks/lebethronWood_3.png b/bin/assets/ab/textures/blocks/lebethronWood_3.png
new file mode 100644
index 0000000..febfb49
Binary files /dev/null and b/bin/assets/ab/textures/blocks/lebethronWood_3.png differ
diff --git a/bin/assets/ab/textures/blocks/lebethronWood_4.png b/bin/assets/ab/textures/blocks/lebethronWood_4.png
new file mode 100644
index 0000000..bd9df74
Binary files /dev/null and b/bin/assets/ab/textures/blocks/lebethronWood_4.png differ
diff --git a/bin/assets/ab/textures/blocks/retainer_rune.png b/bin/assets/ab/textures/blocks/retainer_rune.png
new file mode 100644
index 0000000..bfadbaa
Binary files /dev/null and b/bin/assets/ab/textures/blocks/retainer_rune.png differ
diff --git a/bin/assets/ab/textures/blocks/star_sign.png b/bin/assets/ab/textures/blocks/star_sign.png
new file mode 100644
index 0000000..0a2010e
Binary files /dev/null and b/bin/assets/ab/textures/blocks/star_sign.png differ
diff --git a/bin/assets/ab/textures/blocks/terraFarmland.png b/bin/assets/ab/textures/blocks/terraFarmland.png
new file mode 100644
index 0000000..893d01a
Binary files /dev/null and b/bin/assets/ab/textures/blocks/terraFarmland.png differ
diff --git a/bin/assets/ab/textures/items/blackHalo.png b/bin/assets/ab/textures/items/blackHalo.png
new file mode 100644
index 0000000..6a7ffcf
Binary files /dev/null and b/bin/assets/ab/textures/items/blackHalo.png differ
diff --git a/bin/assets/ab/textures/items/corporeaCatalyst.png b/bin/assets/ab/textures/items/corporeaCatalyst.png
new file mode 100644
index 0000000..f575543
Binary files /dev/null and b/bin/assets/ab/textures/items/corporeaCatalyst.png differ
diff --git a/bin/assets/ab/textures/items/freyr_slingshot.png b/bin/assets/ab/textures/items/freyr_slingshot.png
new file mode 100644
index 0000000..bf2b14c
Binary files /dev/null and b/bin/assets/ab/textures/items/freyr_slingshot.png differ
diff --git a/bin/assets/ab/textures/items/item.mithrillMultiTool.overlay.png b/bin/assets/ab/textures/items/item.mithrillMultiTool.overlay.png
new file mode 100644
index 0000000..39364e1
Binary files /dev/null and b/bin/assets/ab/textures/items/item.mithrillMultiTool.overlay.png differ
diff --git a/bin/assets/ab/textures/items/item.mithrillMultiTool.png b/bin/assets/ab/textures/items/item.mithrillMultiTool.png
new file mode 100644
index 0000000..953b634
Binary files /dev/null and b/bin/assets/ab/textures/items/item.mithrillMultiTool.png differ
diff --git a/bin/assets/ab/textures/items/itemAB.spark_0.png b/bin/assets/ab/textures/items/itemAB.spark_0.png
new file mode 100644
index 0000000..3d46248
Binary files /dev/null and b/bin/assets/ab/textures/items/itemAB.spark_0.png differ
diff --git a/bin/assets/ab/textures/items/itemAB.spark_0.png.mcmeta b/bin/assets/ab/textures/items/itemAB.spark_0.png.mcmeta
new file mode 100644
index 0000000..ffd1e52
--- /dev/null
+++ b/bin/assets/ab/textures/items/itemAB.spark_0.png.mcmeta
@@ -0,0 +1,20 @@
+{
+ "animation": {
+ "frames": [
+ 0,
+ 1,
+ 2,
+ 3,
+ 4,
+ 5,
+ 6,
+ 6,
+ 5,
+ 4,
+ 3,
+ 2,
+ 1,
+ 0
+ ]
+ }
+}
\ No newline at end of file
diff --git a/bin/assets/ab/textures/items/itemAB.spark_1.png b/bin/assets/ab/textures/items/itemAB.spark_1.png
new file mode 100644
index 0000000..672147b
Binary files /dev/null and b/bin/assets/ab/textures/items/itemAB.spark_1.png differ
diff --git a/bin/assets/ab/textures/items/itemAB.spark_1.png.mcmeta b/bin/assets/ab/textures/items/itemAB.spark_1.png.mcmeta
new file mode 100644
index 0000000..a706817
--- /dev/null
+++ b/bin/assets/ab/textures/items/itemAB.spark_1.png.mcmeta
@@ -0,0 +1,23 @@
+{
+ "animation": {
+ "frames": [
+ 0,
+ 1,
+ 2,
+ 3,
+ 4,
+ 5,
+ 6,
+ 6,
+ 5,
+ 4,
+ 3,
+ 2,
+ 1,
+ 0
+ ]
+ },
+ "texture": {
+ "blur": true
+ }
+}
\ No newline at end of file
diff --git a/bin/assets/ab/textures/items/itemAntigravityCharm_0.png b/bin/assets/ab/textures/items/itemAntigravityCharm_0.png
new file mode 100644
index 0000000..94dafe2
Binary files /dev/null and b/bin/assets/ab/textures/items/itemAntigravityCharm_0.png differ
diff --git a/bin/assets/ab/textures/items/itemAntigravityCharm_1.png b/bin/assets/ab/textures/items/itemAntigravityCharm_1.png
new file mode 100644
index 0000000..a91a71a
Binary files /dev/null and b/bin/assets/ab/textures/items/itemAntigravityCharm_1.png differ
diff --git a/bin/assets/ab/textures/items/itemMithrillSword_gem.png b/bin/assets/ab/textures/items/itemMithrillSword_gem.png
new file mode 100644
index 0000000..dc9e022
Binary files /dev/null and b/bin/assets/ab/textures/items/itemMithrillSword_gem.png differ
diff --git a/bin/assets/ab/textures/items/itemMithrillSword_mode_0.png b/bin/assets/ab/textures/items/itemMithrillSword_mode_0.png
new file mode 100644
index 0000000..431de06
Binary files /dev/null and b/bin/assets/ab/textures/items/itemMithrillSword_mode_0.png differ
diff --git a/bin/assets/ab/textures/items/itemMithrillSword_mode_1.png b/bin/assets/ab/textures/items/itemMithrillSword_mode_1.png
new file mode 100644
index 0000000..61894b3
Binary files /dev/null and b/bin/assets/ab/textures/items/itemMithrillSword_mode_1.png differ
diff --git a/bin/assets/ab/textures/items/manaFlower.png b/bin/assets/ab/textures/items/manaFlower.png
new file mode 100644
index 0000000..b198a2c
Binary files /dev/null and b/bin/assets/ab/textures/items/manaFlower.png differ
diff --git a/bin/assets/ab/textures/items/mithrillManaRing.png b/bin/assets/ab/textures/items/mithrillManaRing.png
new file mode 100644
index 0000000..27b8077
Binary files /dev/null and b/bin/assets/ab/textures/items/mithrillManaRing.png differ
diff --git a/bin/assets/ab/textures/items/nebulaBlaze.png b/bin/assets/ab/textures/items/nebulaBlaze.png
new file mode 100644
index 0000000..39f9782
Binary files /dev/null and b/bin/assets/ab/textures/items/nebulaBlaze.png differ
diff --git a/bin/assets/ab/textures/items/nebulaManaRing.png b/bin/assets/ab/textures/items/nebulaManaRing.png
new file mode 100644
index 0000000..f9a0a89
Binary files /dev/null and b/bin/assets/ab/textures/items/nebulaManaRing.png differ
diff --git a/bin/assets/ab/textures/items/resourceAB_0.png b/bin/assets/ab/textures/items/resourceAB_0.png
new file mode 100644
index 0000000..4bff672
Binary files /dev/null and b/bin/assets/ab/textures/items/resourceAB_0.png differ
diff --git a/bin/assets/ab/textures/items/resourceAB_1.png b/bin/assets/ab/textures/items/resourceAB_1.png
new file mode 100644
index 0000000..1c911bf
Binary files /dev/null and b/bin/assets/ab/textures/items/resourceAB_1.png differ
diff --git a/bin/assets/ab/textures/items/resourceAB_2.png b/bin/assets/ab/textures/items/resourceAB_2.png
new file mode 100644
index 0000000..22565de
Binary files /dev/null and b/bin/assets/ab/textures/items/resourceAB_2.png differ
diff --git a/bin/assets/ab/textures/items/resourceAB_3.png b/bin/assets/ab/textures/items/resourceAB_3.png
new file mode 100644
index 0000000..4028300
Binary files /dev/null and b/bin/assets/ab/textures/items/resourceAB_3.png differ
diff --git a/bin/assets/ab/textures/items/resourceAB_4.png b/bin/assets/ab/textures/items/resourceAB_4.png
new file mode 100644
index 0000000..1083b15
Binary files /dev/null and b/bin/assets/ab/textures/items/resourceAB_4.png differ
diff --git a/bin/assets/ab/textures/items/resourceAB_5.png b/bin/assets/ab/textures/items/resourceAB_5.png
new file mode 100644
index 0000000..8c935fb
Binary files /dev/null and b/bin/assets/ab/textures/items/resourceAB_5.png differ
diff --git a/bin/assets/ab/textures/items/resourceAB_6.png b/bin/assets/ab/textures/items/resourceAB_6.png
new file mode 100644
index 0000000..630aff4
Binary files /dev/null and b/bin/assets/ab/textures/items/resourceAB_6.png differ
diff --git a/bin/assets/ab/textures/items/terraHoe.png b/bin/assets/ab/textures/items/terraHoe.png
new file mode 100644
index 0000000..326b667
Binary files /dev/null and b/bin/assets/ab/textures/items/terraHoe.png differ
diff --git a/bin/assets/ab/textures/logo.png b/bin/assets/ab/textures/logo.png
new file mode 100644
index 0000000..bebe4a6
Binary files /dev/null and b/bin/assets/ab/textures/logo.png differ
diff --git a/bin/assets/ab/textures/misc/glow.png b/bin/assets/ab/textures/misc/glow.png
new file mode 100644
index 0000000..a18244e
Binary files /dev/null and b/bin/assets/ab/textures/misc/glow.png differ
diff --git a/bin/assets/ab/textures/misc/glow.png.mcmeta b/bin/assets/ab/textures/misc/glow.png.mcmeta
new file mode 100644
index 0000000..2077f3c
--- /dev/null
+++ b/bin/assets/ab/textures/misc/glow.png.mcmeta
@@ -0,0 +1,6 @@
+{
+ "texture": {
+ "blur": true
+ }
+}
+
diff --git a/bin/assets/ab/textures/model/crystalCube.png b/bin/assets/ab/textures/model/crystalCube.png
new file mode 100644
index 0000000..4c03acc
Binary files /dev/null and b/bin/assets/ab/textures/model/crystalCube.png differ
diff --git a/bin/assets/ab/textures/model/lebethronSpreader.png b/bin/assets/ab/textures/model/lebethronSpreader.png
new file mode 100644
index 0000000..4a0b707
Binary files /dev/null and b/bin/assets/ab/textures/model/lebethronSpreader.png differ
diff --git a/bin/assets/ab/textures/model/lebethronSpreader_halloween.png b/bin/assets/ab/textures/model/lebethronSpreader_halloween.png
new file mode 100644
index 0000000..5d1168c
Binary files /dev/null and b/bin/assets/ab/textures/model/lebethronSpreader_halloween.png differ
diff --git a/bin/assets/ab/textures/model/manaCharger.png b/bin/assets/ab/textures/model/manaCharger.png
new file mode 100644
index 0000000..6614212
Binary files /dev/null and b/bin/assets/ab/textures/model/manaCharger.png differ
diff --git a/bin/assets/ab/textures/model/mana_container.png b/bin/assets/ab/textures/model/mana_container.png
new file mode 100644
index 0000000..e00f760
Binary files /dev/null and b/bin/assets/ab/textures/model/mana_container.png differ
diff --git a/bin/assets/ab/textures/model/nebulaArmor.png b/bin/assets/ab/textures/model/nebulaArmor.png
new file mode 100644
index 0000000..841c2d3
Binary files /dev/null and b/bin/assets/ab/textures/model/nebulaArmor.png differ
diff --git a/bin/assets/botania/textures/gui/categories/forgotten.png b/bin/assets/botania/textures/gui/categories/forgotten.png
new file mode 100644
index 0000000..2e7bbfe
Binary files /dev/null and b/bin/assets/botania/textures/gui/categories/forgotten.png differ
diff --git a/bin/assets/minecraft/textures/gui/container/creative_inventory/tab_ab.png b/bin/assets/minecraft/textures/gui/container/creative_inventory/tab_ab.png
new file mode 100644
index 0000000..bbd659f
Binary files /dev/null and b/bin/assets/minecraft/textures/gui/container/creative_inventory/tab_ab.png differ
diff --git a/bin/mcmod.info b/bin/mcmod.info
new file mode 100644
index 0000000..d79bf18
--- /dev/null
+++ b/bin/mcmod.info
@@ -0,0 +1,17 @@
+[
+{
+ "modid": "AdvancedBotany",
+ "name": "Advanced Botany",
+ "description": "An addon to Botania that adds what the developers think is essential content",
+ "version": "Beta-1",
+ "mcversion": "1.7.10",
+ "logoFile": "assets/ab/textures/logo.png",
+ "url": "Botania: http://www.botaniamod.net",
+ "updateUrl": "",
+ "authorList": [Pulxes, Liapel],
+ "credits": "Vazkii",
+ "parent": "",
+ "screenshots": [],
+ "dependencies": [Botania]
+}
+]
diff --git a/build project.bat b/build project.bat
new file mode 100644
index 0000000..9362988
--- /dev/null
+++ b/build project.bat
@@ -0,0 +1 @@
+gradlew.bat build
\ No newline at end of file
diff --git a/build.gradle b/build.gradle
new file mode 100644
index 0000000..74e5d88
--- /dev/null
+++ b/build.gradle
@@ -0,0 +1,64 @@
+buildscript {
+ repositories {
+ mavenCentral()
+ maven {
+ name = "forge"
+ url = "http://files.minecraftforge.net/maven"
+ }
+ maven {
+ name = "sonatype"
+ url = "https://oss.sonatype.org/content/repositories/snapshots/"
+ }
+ }
+ dependencies {
+ classpath 'net.minecraftforge.gradle:ForgeGradle:1.2-SNAPSHOT'
+ }
+}
+
+apply plugin: 'forge'
+
+version = "1.0"
+group= "com.yourname.modid" // http://maven.apache.org/guides/mini/guide-naming-conventions.html
+archivesBaseName = "modid"
+
+minecraft {
+ version = "1.7.10-10.13.4.1614-1.7.10"
+ runDir = "eclipse"
+}
+
+dependencies {
+ // you may put jars on which you depend on in ./libs
+ // or you may define them like so..
+ //compile "some.group:artifact:version:classifier"
+ //compile "some.group:artifact:version"
+
+ // real examples
+ //compile 'com.mod-buildcraft:buildcraft:6.0.8:dev' // adds buildcraft to the dev env
+ //compile 'com.googlecode.efficient-java-matrix-library:ejml:0.24' // adds ejml to the dev env
+
+ // for more info...
+ // http://www.gradle.org/docs/current/userguide/artifact_dependencies_tutorial.html
+ // http://www.gradle.org/docs/current/userguide/dependency_management.html
+
+ compile fileTree(dir: 'lib', include: ['*.jar'])
+}
+
+processResources
+{
+ // this will ensure that this task is redone when the versions change.
+ inputs.property "version", project.version
+ inputs.property "mcversion", project.minecraft.version
+
+ // replace stuff in mcmod.info, nothing else
+ from(sourceSets.main.resources.srcDirs) {
+ include 'mcmod.info'
+
+ // replace version and mcversion
+ expand 'version':project.version, 'mcversion':project.minecraft.version
+ }
+
+ // copy everything else, thats not the mcmod.info
+ from(sourceSets.main.resources.srcDirs) {
+ exclude 'mcmod.info'
+ }
+}
diff --git a/eclipse/.metadata/.lock b/eclipse/.metadata/.lock
new file mode 100644
index 0000000..e69de29
diff --git a/eclipse/.metadata/.log b/eclipse/.metadata/.log
new file mode 100644
index 0000000..ef9c591
--- /dev/null
+++ b/eclipse/.metadata/.log
@@ -0,0 +1,541 @@
+!SESSION 2022-02-03 09:35:54.488 -----------------------------------------------
+eclipse.buildId=4.22.0.I20211124-1800
+java.version=17.0.1
+java.vendor=Eclipse Adoptium
+BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=ru_RU
+Framework arguments: -product org.eclipse.epp.package.java.product
+Command-line arguments: -os win32 -ws win32 -arch x86_64 -product org.eclipse.epp.package.java.product
+
+!ENTRY org.eclipse.jface 2 0 2022-02-03 09:36:10.615
+!MESSAGE Keybinding conflicts occurred. They may interfere with normal accelerator operation.
+!SUBENTRY 1 org.eclipse.jface 2 0 2022-02-03 09:36:10.615
+!MESSAGE A conflict occurred for CTRL+SHIFT+T:
+Binding(CTRL+SHIFT+T,
+ ParameterizedCommand(Command(org.eclipse.jdt.ui.navigate.open.type,Open Type,
+ Open a type in a Java editor,
+ Category(org.eclipse.ui.category.navigate,Navigate,null,true),
+ org.eclipse.ui.internal.WorkbenchHandlerServiceHandler@5d74507c,
+ ,,true),null),
+ org.eclipse.ui.defaultAcceleratorConfiguration,
+ org.eclipse.ui.contexts.window,,,system)
+Binding(CTRL+SHIFT+T,
+ ParameterizedCommand(Command(org.eclipse.lsp4e.symbolinworkspace,Go to Symbol in Workspace,
+ ,
+ Category(org.eclipse.lsp4e.category,Language Servers,null,true),
+ org.eclipse.ui.internal.WorkbenchHandlerServiceHandler@2a984952,
+ ,,true),null),
+ org.eclipse.ui.defaultAcceleratorConfiguration,
+ org.eclipse.ui.contexts.window,,,system)
+!SUBENTRY 1 org.eclipse.jface 2 0 2022-02-03 09:36:10.615
+!MESSAGE A conflict occurred for ALT+SHIFT+R:
+Binding(ALT+SHIFT+R,
+ ParameterizedCommand(Command(org.eclipse.jdt.ui.edit.text.java.rename.element,Rename - Refactoring ,
+ Rename the selected element,
+ Category(org.eclipse.jdt.ui.category.refactoring,Refactor - Java,Java Refactoring Actions,true),
+ org.eclipse.ui.internal.WorkbenchHandlerServiceHandler@16944b58,
+ ,,true),null),
+ org.eclipse.ui.defaultAcceleratorConfiguration,
+ org.eclipse.ui.contexts.window,,,system)
+Binding(ALT+SHIFT+R,
+ ParameterizedCommand(Command(org.eclipse.ui.edit.rename,Rename,
+ Rename the selected item,
+ Category(org.eclipse.ui.category.file,File,null,true),
+ org.eclipse.ui.internal.WorkbenchHandlerServiceHandler@1dbc607d,
+ ,,true),null),
+ org.eclipse.ui.defaultAcceleratorConfiguration,
+ org.eclipse.ui.contexts.window,,,system)
+
+!ENTRY org.eclipse.egit.ui 2 0 2022-02-03 09:36:14.189
+!MESSAGE Warning: The environment variable HOME is not set. The following directory will be used to store the Git
+user global configuration and to define the default location to store repositories: 'C:\Users\Pulxes'. If this is
+not correct please set the HOME environment variable and restart Eclipse. Otherwise Git for Windows and
+EGit might behave differently since they see different configuration options.
+This warning can be switched off on the Team > Git > Confirmations and Warnings preference page.
+
+!ENTRY org.eclipse.jdt.debug 2 0 2022-02-03 09:37:52.515
+!MESSAGE Unable to find location of java.lang.Thread.setName() in debuggee JVM, for type java.lang.Thread
+
+!ENTRY org.eclipse.jdt.debug 2 0 2022-02-03 09:42:36.093
+!MESSAGE Unable to find location of java.lang.Thread.setName() in debuggee JVM, for type java.lang.Thread
+
+!ENTRY org.eclipse.jdt.debug 2 0 2022-02-03 09:44:32.422
+!MESSAGE Unable to find location of java.lang.Thread.setName() in debuggee JVM, for type java.lang.Thread
+
+!ENTRY org.eclipse.jdt.debug 2 0 2022-02-03 09:47:42.889
+!MESSAGE Unable to find location of java.lang.Thread.setName() in debuggee JVM, for type java.lang.Thread
+
+!ENTRY org.eclipse.core.resources 2 10035 2022-02-03 09:50:03.485
+!MESSAGE The workspace will exit with unsaved changes in this session.
+!SESSION 2022-02-03 09:50:06.264 -----------------------------------------------
+eclipse.buildId=4.22.0.I20211124-1800
+java.version=17.0.1
+java.vendor=Eclipse Adoptium
+BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=ru_RU
+Framework arguments: -product org.eclipse.epp.package.java.product
+Command-line arguments: -os win32 -ws win32 -arch x86_64 -product org.eclipse.epp.package.java.product
+
+!ENTRY org.eclipse.core.resources 2 10035 2022-02-03 09:50:11.854
+!MESSAGE The workspace exited with unsaved changes in the previous session; refreshing workspace to recover changes.
+
+!ENTRY org.eclipse.jface 2 0 2022-02-03 09:50:14.912
+!MESSAGE Keybinding conflicts occurred. They may interfere with normal accelerator operation.
+!SUBENTRY 1 org.eclipse.jface 2 0 2022-02-03 09:50:14.912
+!MESSAGE A conflict occurred for CTRL+SHIFT+T:
+Binding(CTRL+SHIFT+T,
+ ParameterizedCommand(Command(org.eclipse.jdt.ui.navigate.open.type,Open Type,
+ Open a type in a Java editor,
+ Category(org.eclipse.ui.category.navigate,Navigate,null,true),
+ org.eclipse.ui.internal.WorkbenchHandlerServiceHandler@224d537d,
+ ,,true),null),
+ org.eclipse.ui.defaultAcceleratorConfiguration,
+ org.eclipse.ui.contexts.window,,,system)
+Binding(CTRL+SHIFT+T,
+ ParameterizedCommand(Command(org.eclipse.lsp4e.symbolinworkspace,Go to Symbol in Workspace,
+ ,
+ Category(org.eclipse.lsp4e.category,Language Servers,null,true),
+ org.eclipse.ui.internal.WorkbenchHandlerServiceHandler@450d10cb,
+ ,,true),null),
+ org.eclipse.ui.defaultAcceleratorConfiguration,
+ org.eclipse.ui.contexts.window,,,system)
+!SUBENTRY 1 org.eclipse.jface 2 0 2022-02-03 09:50:14.912
+!MESSAGE A conflict occurred for ALT+SHIFT+R:
+Binding(ALT+SHIFT+R,
+ ParameterizedCommand(Command(org.eclipse.jdt.ui.edit.text.java.rename.element,Rename - Refactoring ,
+ Rename the selected element,
+ Category(org.eclipse.jdt.ui.category.refactoring,Refactor - Java,Java Refactoring Actions,true),
+ org.eclipse.ui.internal.WorkbenchHandlerServiceHandler@1bd59b82,
+ ,,true),null),
+ org.eclipse.ui.defaultAcceleratorConfiguration,
+ org.eclipse.ui.contexts.window,,,system)
+Binding(ALT+SHIFT+R,
+ ParameterizedCommand(Command(org.eclipse.ui.edit.rename,Rename,
+ Rename the selected item,
+ Category(org.eclipse.ui.category.file,File,null,true),
+ org.eclipse.ui.internal.WorkbenchHandlerServiceHandler@6a9df5,
+ ,,true),null),
+ org.eclipse.ui.defaultAcceleratorConfiguration,
+ org.eclipse.ui.contexts.window,,,system)
+
+!ENTRY org.eclipse.egit.ui 2 0 2022-02-03 09:50:19.848
+!MESSAGE Warning: The environment variable HOME is not set. The following directory will be used to store the Git
+user global configuration and to define the default location to store repositories: 'C:\Users\Pulxes'. If this is
+not correct please set the HOME environment variable and restart Eclipse. Otherwise Git for Windows and
+EGit might behave differently since they see different configuration options.
+This warning can be switched off on the Team > Git > Confirmations and Warnings preference page.
+
+!ENTRY org.eclipse.jdt.debug 2 0 2022-02-03 09:50:26.244
+!MESSAGE Unable to find location of java.lang.Thread.setName() in debuggee JVM, for type java.lang.Thread
+!SESSION 2022-02-03 09:55:31.633 -----------------------------------------------
+eclipse.buildId=4.22.0.I20211124-1800
+java.version=17.0.1
+java.vendor=Eclipse Adoptium
+BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=ru_RU
+Framework arguments: -product org.eclipse.epp.package.java.product
+Command-line arguments: -os win32 -ws win32 -arch x86_64 -product org.eclipse.epp.package.java.product
+
+!ENTRY org.eclipse.jface 2 0 2022-02-03 09:55:40.609
+!MESSAGE Keybinding conflicts occurred. They may interfere with normal accelerator operation.
+!SUBENTRY 1 org.eclipse.jface 2 0 2022-02-03 09:55:40.609
+!MESSAGE A conflict occurred for CTRL+SHIFT+T:
+Binding(CTRL+SHIFT+T,
+ ParameterizedCommand(Command(org.eclipse.jdt.ui.navigate.open.type,Open Type,
+ Open a type in a Java editor,
+ Category(org.eclipse.ui.category.navigate,Navigate,null,true),
+ org.eclipse.ui.internal.WorkbenchHandlerServiceHandler@20a946d9,
+ ,,true),null),
+ org.eclipse.ui.defaultAcceleratorConfiguration,
+ org.eclipse.ui.contexts.window,,,system)
+Binding(CTRL+SHIFT+T,
+ ParameterizedCommand(Command(org.eclipse.lsp4e.symbolinworkspace,Go to Symbol in Workspace,
+ ,
+ Category(org.eclipse.lsp4e.category,Language Servers,null,true),
+ org.eclipse.ui.internal.WorkbenchHandlerServiceHandler@2b41b8bb,
+ ,,true),null),
+ org.eclipse.ui.defaultAcceleratorConfiguration,
+ org.eclipse.ui.contexts.window,,,system)
+!SUBENTRY 1 org.eclipse.jface 2 0 2022-02-03 09:55:40.609
+!MESSAGE A conflict occurred for ALT+SHIFT+R:
+Binding(ALT+SHIFT+R,
+ ParameterizedCommand(Command(org.eclipse.jdt.ui.edit.text.java.rename.element,Rename - Refactoring ,
+ Rename the selected element,
+ Category(org.eclipse.jdt.ui.category.refactoring,Refactor - Java,Java Refactoring Actions,true),
+ org.eclipse.ui.internal.WorkbenchHandlerServiceHandler@4cadd4d4,
+ ,,true),null),
+ org.eclipse.ui.defaultAcceleratorConfiguration,
+ org.eclipse.ui.contexts.window,,,system)
+Binding(ALT+SHIFT+R,
+ ParameterizedCommand(Command(org.eclipse.ui.edit.rename,Rename,
+ Rename the selected item,
+ Category(org.eclipse.ui.category.file,File,null,true),
+ org.eclipse.ui.internal.WorkbenchHandlerServiceHandler@7538cfe6,
+ ,,true),null),
+ org.eclipse.ui.defaultAcceleratorConfiguration,
+ org.eclipse.ui.contexts.window,,,system)
+
+!ENTRY org.eclipse.egit.ui 2 0 2022-02-03 09:55:46.345
+!MESSAGE Warning: The environment variable HOME is not set. The following directory will be used to store the Git
+user global configuration and to define the default location to store repositories: 'C:\Users\Pulxes'. If this is
+not correct please set the HOME environment variable and restart Eclipse. Otherwise Git for Windows and
+EGit might behave differently since they see different configuration options.
+This warning can be switched off on the Team > Git > Confirmations and Warnings preference page.
+!SESSION 2022-02-03 09:57:45.349 -----------------------------------------------
+eclipse.buildId=4.22.0.I20211124-1800
+java.version=17.0.1
+java.vendor=Eclipse Adoptium
+BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=ru_RU
+Framework arguments: -product org.eclipse.epp.package.java.product
+Command-line arguments: -os win32 -ws win32 -arch x86_64 -product org.eclipse.epp.package.java.product
+
+!ENTRY org.eclipse.jface 2 0 2022-02-03 09:57:52.450
+!MESSAGE Keybinding conflicts occurred. They may interfere with normal accelerator operation.
+!SUBENTRY 1 org.eclipse.jface 2 0 2022-02-03 09:57:52.450
+!MESSAGE A conflict occurred for CTRL+SHIFT+T:
+Binding(CTRL+SHIFT+T,
+ ParameterizedCommand(Command(org.eclipse.jdt.ui.navigate.open.type,Open Type,
+ Open a type in a Java editor,
+ Category(org.eclipse.ui.category.navigate,Navigate,null,true),
+ org.eclipse.ui.internal.WorkbenchHandlerServiceHandler@21d8da75,
+ ,,true),null),
+ org.eclipse.ui.defaultAcceleratorConfiguration,
+ org.eclipse.ui.contexts.window,,,system)
+Binding(CTRL+SHIFT+T,
+ ParameterizedCommand(Command(org.eclipse.lsp4e.symbolinworkspace,Go to Symbol in Workspace,
+ ,
+ Category(org.eclipse.lsp4e.category,Language Servers,null,true),
+ org.eclipse.ui.internal.WorkbenchHandlerServiceHandler@5a1c7619,
+ ,,true),null),
+ org.eclipse.ui.defaultAcceleratorConfiguration,
+ org.eclipse.ui.contexts.window,,,system)
+!SUBENTRY 1 org.eclipse.jface 2 0 2022-02-03 09:57:52.450
+!MESSAGE A conflict occurred for ALT+SHIFT+R:
+Binding(ALT+SHIFT+R,
+ ParameterizedCommand(Command(org.eclipse.jdt.ui.edit.text.java.rename.element,Rename - Refactoring ,
+ Rename the selected element,
+ Category(org.eclipse.jdt.ui.category.refactoring,Refactor - Java,Java Refactoring Actions,true),
+ org.eclipse.ui.internal.WorkbenchHandlerServiceHandler@20a946d9,
+ ,,true),null),
+ org.eclipse.ui.defaultAcceleratorConfiguration,
+ org.eclipse.ui.contexts.window,,,system)
+Binding(ALT+SHIFT+R,
+ ParameterizedCommand(Command(org.eclipse.ui.edit.rename,Rename,
+ Rename the selected item,
+ Category(org.eclipse.ui.category.file,File,null,true),
+ org.eclipse.ui.internal.WorkbenchHandlerServiceHandler@2b41b8bb,
+ ,,true),null),
+ org.eclipse.ui.defaultAcceleratorConfiguration,
+ org.eclipse.ui.contexts.window,,,system)
+
+!ENTRY org.eclipse.egit.ui 2 0 2022-02-03 09:57:56.657
+!MESSAGE Warning: The environment variable HOME is not set. The following directory will be used to store the Git
+user global configuration and to define the default location to store repositories: 'C:\Users\Pulxes'. If this is
+not correct please set the HOME environment variable and restart Eclipse. Otherwise Git for Windows and
+EGit might behave differently since they see different configuration options.
+This warning can be switched off on the Team > Git > Confirmations and Warnings preference page.
+!SESSION 2022-02-03 10:09:54.163 -----------------------------------------------
+eclipse.buildId=4.22.0.I20211124-1800
+java.version=17.0.1
+java.vendor=Eclipse Adoptium
+BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=ru_RU
+Framework arguments: -product org.eclipse.epp.package.java.product
+Command-line arguments: -os win32 -ws win32 -arch x86_64 -product org.eclipse.epp.package.java.product
+
+!ENTRY org.eclipse.jface 2 0 2022-02-03 10:10:03.688
+!MESSAGE Keybinding conflicts occurred. They may interfere with normal accelerator operation.
+!SUBENTRY 1 org.eclipse.jface 2 0 2022-02-03 10:10:03.688
+!MESSAGE A conflict occurred for CTRL+SHIFT+T:
+Binding(CTRL+SHIFT+T,
+ ParameterizedCommand(Command(org.eclipse.jdt.ui.navigate.open.type,Open Type,
+ Open a type in a Java editor,
+ Category(org.eclipse.ui.category.navigate,Navigate,null,true),
+ org.eclipse.ui.internal.WorkbenchHandlerServiceHandler@2b41b8bb,
+ ,,true),null),
+ org.eclipse.ui.defaultAcceleratorConfiguration,
+ org.eclipse.ui.contexts.window,,,system)
+Binding(CTRL+SHIFT+T,
+ ParameterizedCommand(Command(org.eclipse.lsp4e.symbolinworkspace,Go to Symbol in Workspace,
+ ,
+ Category(org.eclipse.lsp4e.category,Language Servers,null,true),
+ org.eclipse.ui.internal.WorkbenchHandlerServiceHandler@4cadd4d4,
+ ,,true),null),
+ org.eclipse.ui.defaultAcceleratorConfiguration,
+ org.eclipse.ui.contexts.window,,,system)
+!SUBENTRY 1 org.eclipse.jface 2 0 2022-02-03 10:10:03.688
+!MESSAGE A conflict occurred for ALT+SHIFT+R:
+Binding(ALT+SHIFT+R,
+ ParameterizedCommand(Command(org.eclipse.jdt.ui.edit.text.java.rename.element,Rename - Refactoring ,
+ Rename the selected element,
+ Category(org.eclipse.jdt.ui.category.refactoring,Refactor - Java,Java Refactoring Actions,true),
+ org.eclipse.ui.internal.WorkbenchHandlerServiceHandler@7538cfe6,
+ ,,true),null),
+ org.eclipse.ui.defaultAcceleratorConfiguration,
+ org.eclipse.ui.contexts.window,,,system)
+Binding(ALT+SHIFT+R,
+ ParameterizedCommand(Command(org.eclipse.ui.edit.rename,Rename,
+ Rename the selected item,
+ Category(org.eclipse.ui.category.file,File,null,true),
+ org.eclipse.ui.internal.WorkbenchHandlerServiceHandler@1f4dd016,
+ ,,true),null),
+ org.eclipse.ui.defaultAcceleratorConfiguration,
+ org.eclipse.ui.contexts.window,,,system)
+
+!ENTRY org.eclipse.egit.ui 2 0 2022-02-03 10:10:07.759
+!MESSAGE Warning: The environment variable HOME is not set. The following directory will be used to store the Git
+user global configuration and to define the default location to store repositories: 'C:\Users\Pulxes'. If this is
+not correct please set the HOME environment variable and restart Eclipse. Otherwise Git for Windows and
+EGit might behave differently since they see different configuration options.
+This warning can be switched off on the Team > Git > Confirmations and Warnings preference page.
+
+!ENTRY org.eclipse.jdt.debug 2 0 2022-02-03 10:24:39.248
+!MESSAGE Unable to find location of java.lang.Thread.setName() in debuggee JVM, for type java.lang.Thread
+
+!ENTRY org.eclipse.jdt.debug 2 0 2022-02-03 10:30:15.565
+!MESSAGE Unable to find location of java.lang.Thread.setName() in debuggee JVM, for type java.lang.Thread
+
+!ENTRY org.eclipse.jdt.core 4 4 2022-02-03 10:30:58.506
+!MESSAGE JavaBuilder handling ImageBuilderInternalException while building: Minecraft
+!STACK 1
+org.eclipse.core.internal.resources.ResourceException: Problems encountered while deleting resources.
+ at org.eclipse.core.internal.resources.Resource.delete(Resource.java:775)
+ at org.eclipse.jdt.internal.core.builder.IncrementalImageBuilder.findSourceFiles(IncrementalImageBuilder.java:727)
+ at org.eclipse.jdt.internal.core.builder.IncrementalImageBuilder.findSourceFiles(IncrementalImageBuilder.java:588)
+ at org.eclipse.jdt.internal.core.builder.IncrementalImageBuilder.findSourceFiles(IncrementalImageBuilder.java:588)
+ at org.eclipse.jdt.internal.core.builder.IncrementalImageBuilder.findSourceFiles(IncrementalImageBuilder.java:588)
+ at org.eclipse.jdt.internal.core.builder.IncrementalImageBuilder.findSourceFiles(IncrementalImageBuilder.java:539)
+ at org.eclipse.jdt.internal.core.builder.IncrementalImageBuilder.build(IncrementalImageBuilder.java:119)
+ at org.eclipse.jdt.internal.core.builder.JavaBuilder.buildDeltas(JavaBuilder.java:289)
+ at org.eclipse.jdt.internal.core.builder.JavaBuilder.build(JavaBuilder.java:212)
+ at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:853)
+ at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
+ at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:232)
+ at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:281)
+ at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:334)
+ at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
+ at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:337)
+ at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:389)
+ at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:410)
+ at org.eclipse.core.internal.events.AutoBuildJob.doBuild(AutoBuildJob.java:160)
+ at org.eclipse.core.internal.events.AutoBuildJob.run(AutoBuildJob.java:251)
+ at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
+Contains: Could not delete 'C:\Users\Pulxes\Desktop\Developing mods for Cubes\Advanced Botany Beta-1\bin\assets\ab\lang\en_US.lang'.
+org.eclipse.core.runtime.CoreException: Problems encountered while deleting files.
+ at org.eclipse.core.internal.filesystem.local.LocalFile.delete(LocalFile.java:141)
+ at org.eclipse.core.internal.resources.ResourceTree.internalDeleteFile(ResourceTree.java:316)
+ at org.eclipse.core.internal.resources.ResourceTree.standardDeleteFile(ResourceTree.java:802)
+ at org.eclipse.core.internal.resources.Resource.unprotectedDelete(Resource.java:1784)
+ at org.eclipse.core.internal.resources.Resource.delete(Resource.java:762)
+ at org.eclipse.jdt.internal.core.builder.IncrementalImageBuilder.findSourceFiles(IncrementalImageBuilder.java:727)
+ at org.eclipse.jdt.internal.core.builder.IncrementalImageBuilder.findSourceFiles(IncrementalImageBuilder.java:588)
+ at org.eclipse.jdt.internal.core.builder.IncrementalImageBuilder.findSourceFiles(IncrementalImageBuilder.java:588)
+ at org.eclipse.jdt.internal.core.builder.IncrementalImageBuilder.findSourceFiles(IncrementalImageBuilder.java:588)
+ at org.eclipse.jdt.internal.core.builder.IncrementalImageBuilder.findSourceFiles(IncrementalImageBuilder.java:539)
+ at org.eclipse.jdt.internal.core.builder.IncrementalImageBuilder.build(IncrementalImageBuilder.java:119)
+ at org.eclipse.jdt.internal.core.builder.JavaBuilder.buildDeltas(JavaBuilder.java:289)
+ at org.eclipse.jdt.internal.core.builder.JavaBuilder.build(JavaBuilder.java:212)
+ at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:853)
+ at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
+ at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:232)
+ at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:281)
+ at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:334)
+ at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
+ at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:337)
+ at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:389)
+ at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:410)
+ at org.eclipse.core.internal.events.AutoBuildJob.doBuild(AutoBuildJob.java:160)
+ at org.eclipse.core.internal.events.AutoBuildJob.run(AutoBuildJob.java:251)
+ at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
+Contains: Could not delete: C:\Users\Pulxes\Desktop\Developing mods for Cubes\Advanced Botany Beta-1\bin\assets\ab\lang\en_US.lang.
+java.nio.file.FileSystemException: C:\Users\Pulxes\Desktop\Developing mods for Cubes\Advanced Botany Beta-1\bin\assets\ab\lang\en_US.lang: Процесс не может получить доступ к файлу, так как этот файл занят другим процессом
+ at java.base/sun.nio.fs.WindowsException.translateToIOException(WindowsException.java:92)
+ at java.base/sun.nio.fs.WindowsException.rethrowAsIOException(WindowsException.java:103)
+ at java.base/sun.nio.fs.WindowsException.rethrowAsIOException(WindowsException.java:108)
+ at java.base/sun.nio.fs.WindowsFileSystemProvider.implDelete(WindowsFileSystemProvider.java:275)
+ at java.base/sun.nio.fs.AbstractFileSystemProvider.deleteIfExists(AbstractFileSystemProvider.java:110)
+ at java.base/java.nio.file.Files.deleteIfExists(Files.java:1191)
+ at org.eclipse.core.internal.filesystem.local.LocalFile.internalDelete(LocalFile.java:222)
+ at org.eclipse.core.internal.filesystem.local.LocalFile.delete(LocalFile.java:139)
+ at org.eclipse.core.internal.resources.ResourceTree.internalDeleteFile(ResourceTree.java:316)
+ at org.eclipse.core.internal.resources.ResourceTree.standardDeleteFile(ResourceTree.java:802)
+ at org.eclipse.core.internal.resources.Resource.unprotectedDelete(Resource.java:1784)
+ at org.eclipse.core.internal.resources.Resource.delete(Resource.java:762)
+ at org.eclipse.jdt.internal.core.builder.IncrementalImageBuilder.findSourceFiles(IncrementalImageBuilder.java:727)
+ at org.eclipse.jdt.internal.core.builder.IncrementalImageBuilder.findSourceFiles(IncrementalImageBuilder.java:588)
+ at org.eclipse.jdt.internal.core.builder.IncrementalImageBuilder.findSourceFiles(IncrementalImageBuilder.java:588)
+ at org.eclipse.jdt.internal.core.builder.IncrementalImageBuilder.findSourceFiles(IncrementalImageBuilder.java:588)
+ at org.eclipse.jdt.internal.core.builder.IncrementalImageBuilder.findSourceFiles(IncrementalImageBuilder.java:539)
+ at org.eclipse.jdt.internal.core.builder.IncrementalImageBuilder.build(IncrementalImageBuilder.java:119)
+ at org.eclipse.jdt.internal.core.builder.JavaBuilder.buildDeltas(JavaBuilder.java:289)
+ at org.eclipse.jdt.internal.core.builder.JavaBuilder.build(JavaBuilder.java:212)
+ at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:853)
+ at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
+ at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:232)
+ at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:281)
+ at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:334)
+ at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
+ at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:337)
+ at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:389)
+ at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:410)
+ at org.eclipse.core.internal.events.AutoBuildJob.doBuild(AutoBuildJob.java:160)
+ at org.eclipse.core.internal.events.AutoBuildJob.run(AutoBuildJob.java:251)
+ at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
+!SUBENTRY 1 org.eclipse.core.resources 4 273 2022-02-03 10:30:58.509
+!MESSAGE Problems encountered while deleting resources.
+!SUBENTRY 2 org.eclipse.core.resources 4 273 2022-02-03 10:30:58.509
+!MESSAGE Could not delete 'C:\Users\Pulxes\Desktop\Developing mods for Cubes\Advanced Botany Beta-1\bin\assets\ab\lang\en_US.lang'.
+!STACK 1
+org.eclipse.core.runtime.CoreException: Problems encountered while deleting files.
+ at org.eclipse.core.internal.filesystem.local.LocalFile.delete(LocalFile.java:141)
+ at org.eclipse.core.internal.resources.ResourceTree.internalDeleteFile(ResourceTree.java:316)
+ at org.eclipse.core.internal.resources.ResourceTree.standardDeleteFile(ResourceTree.java:802)
+ at org.eclipse.core.internal.resources.Resource.unprotectedDelete(Resource.java:1784)
+ at org.eclipse.core.internal.resources.Resource.delete(Resource.java:762)
+ at org.eclipse.jdt.internal.core.builder.IncrementalImageBuilder.findSourceFiles(IncrementalImageBuilder.java:727)
+ at org.eclipse.jdt.internal.core.builder.IncrementalImageBuilder.findSourceFiles(IncrementalImageBuilder.java:588)
+ at org.eclipse.jdt.internal.core.builder.IncrementalImageBuilder.findSourceFiles(IncrementalImageBuilder.java:588)
+ at org.eclipse.jdt.internal.core.builder.IncrementalImageBuilder.findSourceFiles(IncrementalImageBuilder.java:588)
+ at org.eclipse.jdt.internal.core.builder.IncrementalImageBuilder.findSourceFiles(IncrementalImageBuilder.java:539)
+ at org.eclipse.jdt.internal.core.builder.IncrementalImageBuilder.build(IncrementalImageBuilder.java:119)
+ at org.eclipse.jdt.internal.core.builder.JavaBuilder.buildDeltas(JavaBuilder.java:289)
+ at org.eclipse.jdt.internal.core.builder.JavaBuilder.build(JavaBuilder.java:212)
+ at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:853)
+ at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
+ at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:232)
+ at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:281)
+ at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:334)
+ at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
+ at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:337)
+ at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:389)
+ at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:410)
+ at org.eclipse.core.internal.events.AutoBuildJob.doBuild(AutoBuildJob.java:160)
+ at org.eclipse.core.internal.events.AutoBuildJob.run(AutoBuildJob.java:251)
+ at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
+Contains: Could not delete: C:\Users\Pulxes\Desktop\Developing mods for Cubes\Advanced Botany Beta-1\bin\assets\ab\lang\en_US.lang.
+java.nio.file.FileSystemException: C:\Users\Pulxes\Desktop\Developing mods for Cubes\Advanced Botany Beta-1\bin\assets\ab\lang\en_US.lang: Процесс не может получить доступ к файлу, так как этот файл занят другим процессом
+ at java.base/sun.nio.fs.WindowsException.translateToIOException(WindowsException.java:92)
+ at java.base/sun.nio.fs.WindowsException.rethrowAsIOException(WindowsException.java:103)
+ at java.base/sun.nio.fs.WindowsException.rethrowAsIOException(WindowsException.java:108)
+ at java.base/sun.nio.fs.WindowsFileSystemProvider.implDelete(WindowsFileSystemProvider.java:275)
+ at java.base/sun.nio.fs.AbstractFileSystemProvider.deleteIfExists(AbstractFileSystemProvider.java:110)
+ at java.base/java.nio.file.Files.deleteIfExists(Files.java:1191)
+ at org.eclipse.core.internal.filesystem.local.LocalFile.internalDelete(LocalFile.java:222)
+ at org.eclipse.core.internal.filesystem.local.LocalFile.delete(LocalFile.java:139)
+ at org.eclipse.core.internal.resources.ResourceTree.internalDeleteFile(ResourceTree.java:316)
+ at org.eclipse.core.internal.resources.ResourceTree.standardDeleteFile(ResourceTree.java:802)
+ at org.eclipse.core.internal.resources.Resource.unprotectedDelete(Resource.java:1784)
+ at org.eclipse.core.internal.resources.Resource.delete(Resource.java:762)
+ at org.eclipse.jdt.internal.core.builder.IncrementalImageBuilder.findSourceFiles(IncrementalImageBuilder.java:727)
+ at org.eclipse.jdt.internal.core.builder.IncrementalImageBuilder.findSourceFiles(IncrementalImageBuilder.java:588)
+ at org.eclipse.jdt.internal.core.builder.IncrementalImageBuilder.findSourceFiles(IncrementalImageBuilder.java:588)
+ at org.eclipse.jdt.internal.core.builder.IncrementalImageBuilder.findSourceFiles(IncrementalImageBuilder.java:588)
+ at org.eclipse.jdt.internal.core.builder.IncrementalImageBuilder.findSourceFiles(IncrementalImageBuilder.java:539)
+ at org.eclipse.jdt.internal.core.builder.IncrementalImageBuilder.build(IncrementalImageBuilder.java:119)
+ at org.eclipse.jdt.internal.core.builder.JavaBuilder.buildDeltas(JavaBuilder.java:289)
+ at org.eclipse.jdt.internal.core.builder.JavaBuilder.build(JavaBuilder.java:212)
+ at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:853)
+ at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
+ at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:232)
+ at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:281)
+ at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:334)
+ at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
+ at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:337)
+ at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:389)
+ at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:410)
+ at org.eclipse.core.internal.events.AutoBuildJob.doBuild(AutoBuildJob.java:160)
+ at org.eclipse.core.internal.events.AutoBuildJob.run(AutoBuildJob.java:251)
+ at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
+!SUBENTRY 3 org.eclipse.core.filesystem 4 273 2022-02-03 10:30:58.511
+!MESSAGE Problems encountered while deleting files.
+!SUBENTRY 4 org.eclipse.core.filesystem 4 273 2022-02-03 10:30:58.511
+!MESSAGE Could not delete: C:\Users\Pulxes\Desktop\Developing mods for Cubes\Advanced Botany Beta-1\bin\assets\ab\lang\en_US.lang.
+!STACK 0
+java.nio.file.FileSystemException: C:\Users\Pulxes\Desktop\Developing mods for Cubes\Advanced Botany Beta-1\bin\assets\ab\lang\en_US.lang: Процесс не может получить доступ к файлу, так как этот файл занят другим процессом
+ at java.base/sun.nio.fs.WindowsException.translateToIOException(WindowsException.java:92)
+ at java.base/sun.nio.fs.WindowsException.rethrowAsIOException(WindowsException.java:103)
+ at java.base/sun.nio.fs.WindowsException.rethrowAsIOException(WindowsException.java:108)
+ at java.base/sun.nio.fs.WindowsFileSystemProvider.implDelete(WindowsFileSystemProvider.java:275)
+ at java.base/sun.nio.fs.AbstractFileSystemProvider.deleteIfExists(AbstractFileSystemProvider.java:110)
+ at java.base/java.nio.file.Files.deleteIfExists(Files.java:1191)
+ at org.eclipse.core.internal.filesystem.local.LocalFile.internalDelete(LocalFile.java:222)
+ at org.eclipse.core.internal.filesystem.local.LocalFile.delete(LocalFile.java:139)
+ at org.eclipse.core.internal.resources.ResourceTree.internalDeleteFile(ResourceTree.java:316)
+ at org.eclipse.core.internal.resources.ResourceTree.standardDeleteFile(ResourceTree.java:802)
+ at org.eclipse.core.internal.resources.Resource.unprotectedDelete(Resource.java:1784)
+ at org.eclipse.core.internal.resources.Resource.delete(Resource.java:762)
+ at org.eclipse.jdt.internal.core.builder.IncrementalImageBuilder.findSourceFiles(IncrementalImageBuilder.java:727)
+ at org.eclipse.jdt.internal.core.builder.IncrementalImageBuilder.findSourceFiles(IncrementalImageBuilder.java:588)
+ at org.eclipse.jdt.internal.core.builder.IncrementalImageBuilder.findSourceFiles(IncrementalImageBuilder.java:588)
+ at org.eclipse.jdt.internal.core.builder.IncrementalImageBuilder.findSourceFiles(IncrementalImageBuilder.java:588)
+ at org.eclipse.jdt.internal.core.builder.IncrementalImageBuilder.findSourceFiles(IncrementalImageBuilder.java:539)
+ at org.eclipse.jdt.internal.core.builder.IncrementalImageBuilder.build(IncrementalImageBuilder.java:119)
+ at org.eclipse.jdt.internal.core.builder.JavaBuilder.buildDeltas(JavaBuilder.java:289)
+ at org.eclipse.jdt.internal.core.builder.JavaBuilder.build(JavaBuilder.java:212)
+ at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:853)
+ at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
+ at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:232)
+ at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:281)
+ at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:334)
+ at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
+ at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:337)
+ at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:389)
+ at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:410)
+ at org.eclipse.core.internal.events.AutoBuildJob.doBuild(AutoBuildJob.java:160)
+ at org.eclipse.core.internal.events.AutoBuildJob.run(AutoBuildJob.java:251)
+ at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
+!SESSION 2022-02-03 11:34:44.663 -----------------------------------------------
+eclipse.buildId=4.22.0.I20211124-1800
+java.version=17.0.1
+java.vendor=Eclipse Adoptium
+BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=ru_RU
+Framework arguments: -product org.eclipse.epp.package.java.product
+Command-line arguments: -os win32 -ws win32 -arch x86_64 -product org.eclipse.epp.package.java.product
+
+!ENTRY org.eclipse.jface 2 0 2022-02-03 11:34:50.172
+!MESSAGE Keybinding conflicts occurred. They may interfere with normal accelerator operation.
+!SUBENTRY 1 org.eclipse.jface 2 0 2022-02-03 11:34:50.172
+!MESSAGE A conflict occurred for CTRL+SHIFT+T:
+Binding(CTRL+SHIFT+T,
+ ParameterizedCommand(Command(org.eclipse.jdt.ui.navigate.open.type,Open Type,
+ Open a type in a Java editor,
+ Category(org.eclipse.ui.category.navigate,Navigate,null,true),
+ org.eclipse.ui.internal.WorkbenchHandlerServiceHandler@4cadd4d4,
+ ,,true),null),
+ org.eclipse.ui.defaultAcceleratorConfiguration,
+ org.eclipse.ui.contexts.window,,,system)
+Binding(CTRL+SHIFT+T,
+ ParameterizedCommand(Command(org.eclipse.lsp4e.symbolinworkspace,Go to Symbol in Workspace,
+ ,
+ Category(org.eclipse.lsp4e.category,Language Servers,null,true),
+ org.eclipse.ui.internal.WorkbenchHandlerServiceHandler@7538cfe6,
+ ,,true),null),
+ org.eclipse.ui.defaultAcceleratorConfiguration,
+ org.eclipse.ui.contexts.window,,,system)
+!SUBENTRY 1 org.eclipse.jface 2 0 2022-02-03 11:34:50.172
+!MESSAGE A conflict occurred for ALT+SHIFT+R:
+Binding(ALT+SHIFT+R,
+ ParameterizedCommand(Command(org.eclipse.jdt.ui.edit.text.java.rename.element,Rename - Refactoring ,
+ Rename the selected element,
+ Category(org.eclipse.jdt.ui.category.refactoring,Refactor - Java,Java Refactoring Actions,true),
+ org.eclipse.ui.internal.WorkbenchHandlerServiceHandler@1f4dd016,
+ ,,true),null),
+ org.eclipse.ui.defaultAcceleratorConfiguration,
+ org.eclipse.ui.contexts.window,,,system)
+Binding(ALT+SHIFT+R,
+ ParameterizedCommand(Command(org.eclipse.ui.edit.rename,Rename,
+ Rename the selected item,
+ Category(org.eclipse.ui.category.file,File,null,true),
+ org.eclipse.ui.internal.WorkbenchHandlerServiceHandler@396f2724,
+ ,,true),null),
+ org.eclipse.ui.defaultAcceleratorConfiguration,
+ org.eclipse.ui.contexts.window,,,system)
+
+!ENTRY org.eclipse.egit.ui 2 0 2022-02-03 11:34:53.404
+!MESSAGE Warning: The environment variable HOME is not set. The following directory will be used to store the Git
+user global configuration and to define the default location to store repositories: 'C:\Users\Pulxes'. If this is
+not correct please set the HOME environment variable and restart Eclipse. Otherwise Git for Windows and
+EGit might behave differently since they see different configuration options.
+This warning can be switched off on the Team > Git > Confirmations and Warnings preference page.
+
+!ENTRY org.eclipse.jdt.debug 2 0 2022-02-03 12:09:06.106
+!MESSAGE Unable to find location of java.lang.Thread.setName() in debuggee JVM, for type java.lang.Thread
+
+!ENTRY org.eclipse.jdt.debug 2 0 2022-02-03 16:41:40.707
+!MESSAGE Unable to find location of java.lang.Thread.setName() in debuggee JVM, for type java.lang.Thread
diff --git a/eclipse/.metadata/.plugins/org.eclipse.core.resources/.history/21/50ccb378bc84001c1c1eb532e283f688 b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.history/21/50ccb378bc84001c1c1eb532e283f688
new file mode 100644
index 0000000..418453c
--- /dev/null
+++ b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.history/21/50ccb378bc84001c1c1eb532e283f688
@@ -0,0 +1,102 @@
+package ab.api.recipe.lexicon;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.lwjgl.opengl.GL11;
+
+import ab.api.recipe.RecipeAdvancedPlate;
+import ab.client.core.ClientHelper;
+import ab.common.lib.register.BlockListAB;
+import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
+import net.minecraft.client.Minecraft;
+import net.minecraft.client.gui.FontRenderer;
+import net.minecraft.client.gui.GuiScreen;
+import net.minecraft.client.renderer.texture.TextureManager;
+import net.minecraft.item.ItemStack;
+import net.minecraft.util.ResourceLocation;
+import net.minecraft.util.StatCollector;
+import vazkii.botania.api.internal.IGuiLexiconEntry;
+import vazkii.botania.api.lexicon.LexiconEntry;
+import vazkii.botania.api.lexicon.LexiconRecipeMappings;
+import vazkii.botania.client.core.handler.ClientTickHandler;
+import vazkii.botania.client.core.handler.HUDHandler;
+import vazkii.botania.common.core.handler.ConfigHandler;
+import vazkii.botania.common.lexicon.page.PageRecipe;
+
+public class AdvancedPlateCraftPage extends PageRecipe {
+
+ private static final ResourceLocation plateOverlay = new ResourceLocation("botania:textures/gui/petalOverlay.png");
+ private RecipeAdvancedPlate recipe;
+ int ticksElapsed = 0;
+
+ public AdvancedPlateCraftPage(RecipeAdvancedPlate recipe) {
+ super(".abCraft");
+ this.recipe = recipe;
+ }
+
+ public AdvancedPlateCraftPage(RecipeAdvancedPlate recipe, String str) {
+ super(".abCraft" + str);
+ this.recipe = recipe;
+ }
+
+ public void onPageAdded(LexiconEntry entry, int index) {
+ LexiconRecipeMappings.map(recipe.getOutput(), entry, index);
+ }
+
+ @SideOnly(Side.CLIENT)
+ public void renderRecipe(IGuiLexiconEntry gui, int mx, int my) {
+ TextureManager render = (Minecraft.getMinecraft()).renderEngine;
+ renderItemAtGridPos(gui, 3, 0, recipe.getOutput(), false);
+ renderItemAtGridPos(gui, 2, 1, new ItemStack(BlockListAB.blockABPlate), false);
+ List inputs = recipe.getInputs();
+ int degreePerInput = (int)(360.0F / inputs.size());
+ float currentDegree = ConfigHandler.lexiconRotatingItems ? (GuiScreen.isShiftKeyDown() ? this.ticksElapsed : (this.ticksElapsed + ClientTickHandler.partialTicks)) : 0.0F;
+ for (ItemStack obj : inputs) {
+ ItemStack copy = obj.copy();
+ if (copy.getItemDamage() == 32767)
+ copy.setItemDamage(0);
+ renderItemAtAngle(gui, currentDegree, copy);
+ currentDegree += degreePerInput;
+ }
+ renderManaBar(gui, mx, my);
+ render.bindTexture(plateOverlay);
+ GL11.glEnable(3042);
+ GL11.glBlendFunc(770, 771);
+ GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F);
+ ((GuiScreen)gui).drawTexturedModalRect(gui.getLeft(), gui.getTop(), 0, 0, gui.getWidth(), gui.getHeight());
+ GL11.glDisable(3042);
+ }
+
+ @SideOnly(Side.CLIENT)
+ public void renderManaBar(IGuiLexiconEntry gui, int mx, int my) {
+ FontRenderer font = (Minecraft.getMinecraft()).fontRenderer;
+ GL11.glEnable(3042);
+ GL11.glBlendFunc(770, 771);
+ String manaUsage = StatCollector.translateToLocal("botaniamisc.manaUsage");
+ font.drawString(manaUsage, gui.getLeft() + gui.getWidth() / 2 - font.getStringWidth(manaUsage) / 2, gui.getTop() + 105, 1711276032);
+ int x = gui.getLeft() + gui.getWidth() / 2 - 50;
+ int y = gui.getTop() + 120;
+ String stopStr = StatCollector.translateToLocal("botaniamisc.shiftToStopSpin");
+ ClientHelper.renderPoolManaBar(x, y - 5, 0x239ddc, 1.0f, this.recipe.getManaUsage());
+ boolean unicode = font.getUnicodeFlag();
+ font.setUnicodeFlag(true);
+ font.drawString(stopStr, x + 49 - font.getStringWidth(stopStr) / 2, y + 18, -1728053248);
+ font.setUnicodeFlag(unicode);
+ GL11.glDisable(3042);
+ }
+
+ @SideOnly(Side.CLIENT)
+ public void updateScreen() {
+ if (GuiScreen.isShiftKeyDown())
+ return;
+ this.ticksElapsed++;
+ }
+
+ public List getDisplayedRecipes() {
+ ArrayList list = new ArrayList();
+ list.add(recipe.getOutput());
+ return list;
+ }
+}
diff --git a/eclipse/.metadata/.plugins/org.eclipse.core.resources/.history/2c/002619bebc84001c1c1eb532e283f688 b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.history/2c/002619bebc84001c1c1eb532e283f688
new file mode 100644
index 0000000..529b3ab
--- /dev/null
+++ b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.history/2c/002619bebc84001c1c1eb532e283f688
@@ -0,0 +1,108 @@
+package ab.client.core;
+
+import org.lwjgl.opengl.GL11;
+
+import net.minecraft.client.Minecraft;
+import net.minecraft.client.gui.ScaledResolution;
+import net.minecraft.client.renderer.RenderHelper;
+import net.minecraft.client.renderer.entity.RenderItem;
+import net.minecraft.item.ItemStack;
+import net.minecraft.util.StatCollector;
+import vazkii.botania.client.core.handler.HUDHandler;
+import vazkii.botania.common.block.ModBlocks;
+
+public class ClientHelper {
+
+ public static String getChanceName(int chance) {
+ String name = "";
+ switch((int)(chance / 16.6f)) {
+ case 0: name = "lowest";
+ break;
+ case 1: name = "veryLow";
+ break;
+ case 2: name = "low";
+ break;
+ case 3: name = "middle";
+ break;
+ case 4: name = "high";
+ break;
+ case 5: name = "veryHigh";
+ break;
+ case 6: name = "highest";
+ break;
+ }
+ return StatCollector.translateToLocal("ab.alphirine.change") + ": " + StatCollector.translateToLocal("ab.chance." + name);
+ }
+
+ public static void renderPoolManaBar(int x, int y, int color, float alpha, int mana, boolean withShadow) {
+ Minecraft mc = Minecraft.getMinecraft();
+ int poolCount = (int)Math.floor(mana / 1000000.0D);
+ if(poolCount < 0)
+ poolCount = 0;
+ int onePoolMana = mana - (poolCount * 1000000);
+ String strPool = poolCount + "x";
+ int xc = x - mc.fontRenderer.getStringWidth(strPool) / 2;
+ int yc = y;
+ GL11.glPushMatrix();
+ GL11.glTranslatef(xc + 42.0f, yc + 5.0f, 0.0f);
+ RenderHelper.enableGUIStandardItemLighting();
+ RenderItem.getInstance().renderItemAndEffectIntoGUI(mc.fontRenderer, mc.renderEngine, new ItemStack(ModBlocks.pool), 0, 0);
+ RenderHelper.disableStandardItemLighting();
+ GL11.glTranslatef(18.0f, 4.5f, 300.0f);
+ if(withShadow)
+ mc.fontRenderer.drawStringWithShadow(strPool, 0, 0, color);
+ else
+ mc.fontRenderer.drawString(strPool, 0, 0, color);
+ GL11.glPopMatrix();
+ if((poolCount * 1000000) == mana)
+ onePoolMana = poolCount * 1000000;
+ HUDHandler.renderManaBar(x, y, color, alpha, onePoolMana, 1000000);
+ }
+
+ public static void drawPoolManaHUD(ScaledResolution res, String name, int mana, int color) {
+ Minecraft mc = Minecraft.getMinecraft();
+ int poolCount = (int)Math.floor(mana / 1000000.0D);
+ if(poolCount < 0)
+ poolCount = 0;
+ int onePoolMana = mana - (poolCount * 1000000);
+ String strPool = poolCount + "x";
+ int xc = res.getScaledWidth() / 2 - mc.fontRenderer.getStringWidth(strPool) / 2 - 3;
+ int yc = res.getScaledHeight() / 2;
+ GL11.glPushMatrix();
+ GL11.glTranslatef(xc - 6.0f, yc + 30.0f, 0.0f);
+ RenderHelper.enableGUIStandardItemLighting();
+ RenderItem.getInstance().renderItemAndEffectIntoGUI(mc.fontRenderer, mc.renderEngine, new ItemStack(ModBlocks.pool), 0, 0);
+ RenderHelper.disableStandardItemLighting();
+ GL11.glTranslatef(18.0f, 4.5f, 300.0f);
+ mc.fontRenderer.drawStringWithShadow(strPool, 0, 0, color);
+ GL11.glPopMatrix();
+ if((poolCount * 1000000) == mana)
+ onePoolMana = poolCount * 1000000;
+ HUDHandler.drawSimpleManaHUD(color, onePoolMana, 1000000, name, res);
+ }
+
+ public static void drawPoolManaHUD(ScaledResolution res, String name, int mana, int maxMana, int color) {
+ Minecraft mc = Minecraft.getMinecraft();
+ int poolCount = (int)Math.floor(mana / 1000000.0D);
+ int maxPoolCount = (int)Math.floor(maxMana / 1000000.0D);
+ if(poolCount < 0)
+ poolCount = 0;
+ if(maxPoolCount < 0)
+ maxPoolCount = 0;
+ int onePoolMana = mana - (poolCount * 1000000);
+ String strPool = poolCount + "x / " + maxPoolCount + "x";
+ int xc = res.getScaledWidth() / 2 - mc.fontRenderer.getStringWidth(strPool) / 2 - 3;
+ int yc = res.getScaledHeight() / 2;
+ GL11.glPushMatrix();
+ GL11.glTranslatef(xc - 6.0f, yc + 30.0f, 0.0f);
+ RenderHelper.enableGUIStandardItemLighting();
+ RenderItem.getInstance().renderItemAndEffectIntoGUI(mc.fontRenderer, mc.renderEngine, new ItemStack(ModBlocks.pool), 0, 0);
+ RenderHelper.disableStandardItemLighting();
+ GL11.glTranslatef(18.0f, 4.5f, 300.0f);
+ mc.fontRenderer.drawStringWithShadow(strPool, 0, 0, color);
+ GL11.glPopMatrix();
+ if((poolCount * 1000000) == mana)
+ onePoolMana = poolCount * 1000000;
+ HUDHandler.drawSimpleManaHUD(color, onePoolMana, 1000000, name, res);
+ }
+}
\ No newline at end of file
diff --git a/eclipse/.metadata/.plugins/org.eclipse.core.resources/.history/2f/10be1bbebc84001c1c1eb532e283f688 b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.history/2f/10be1bbebc84001c1c1eb532e283f688
new file mode 100644
index 0000000..a40d173
--- /dev/null
+++ b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.history/2f/10be1bbebc84001c1c1eb532e283f688
@@ -0,0 +1,118 @@
+package ab.client.nei;
+
+import java.awt.Rectangle;
+import java.util.ArrayList;
+import java.util.List;
+import org.lwjgl.opengl.GL11;
+import ab.api.AdvancedBotanyAPI;
+import ab.api.recipe.RecipeAdvancedPlate;
+import ab.client.core.ClientHelper;
+import ab.client.nei.RecipeHandlerAlphirine.CachedHandlerAlphirine;
+import ab.common.lib.register.BlockListAB;
+import codechicken.lib.gui.GuiDraw;
+import codechicken.nei.NEIServerUtils;
+import codechicken.nei.PositionedStack;
+import codechicken.nei.recipe.TemplateRecipeHandler;
+import net.minecraft.client.Minecraft;
+import net.minecraft.client.gui.FontRenderer;
+import net.minecraft.item.ItemStack;
+import net.minecraft.util.StatCollector;
+
+public class RecipeHandlerAdvancedPlate extends TemplateRecipeHandler {
+
+ public class CachedAdvancedPlateRecipe extends TemplateRecipeHandler.CachedRecipe {
+
+ public List inputs = new ArrayList();
+ public PositionedStack output;
+ public int manaUsage;
+
+ public CachedAdvancedPlateRecipe(RecipeAdvancedPlate recipe) {
+ setIngredients(recipe.getInputs());
+ this.output = new PositionedStack(recipe.getOutput(), 111, 21);
+ this.inputs.add(new PositionedStack(new ItemStack(BlockListAB.blockABPlate), 73, 55));
+ this.manaUsage = recipe.getManaUsage();
+ }
+
+ public void setIngredients(List inputs) {
+ float degreePerInput = 360.0F / inputs.size();
+ float currentDegree = -90.0F;
+ for (Object o : inputs) {
+ int posX = (int)Math.round(73.0D + Math.cos(currentDegree * Math.PI / 180.0D) * 32.0D);
+ int posY = (int)Math.round(55.0D + Math.sin(currentDegree * Math.PI / 180.0D) * 32.0D);
+ this.inputs.add(new PositionedStack(o, posX, posY));
+ currentDegree += degreePerInput;
+ }
+ }
+
+ public List getIngredients() {
+ return getCycledIngredients(RecipeHandlerAdvancedPlate.this.cycleticks / 20, this.inputs);
+ }
+
+ public PositionedStack getResult() {
+ return this.output;
+ }
+ }
+
+ public String getRecipeName() {
+ return StatCollector.translateToLocal("ab.nei.advancedPlate");
+ }
+
+ public String getRecipeID() {
+ return "ab.advancedPlate";
+ }
+
+ public String getGuiTexture() {
+ return "botania:textures/gui/neiBlank.png";
+ }
+
+ public void loadTransferRects() {
+ this.transferRects.add(new TemplateRecipeHandler.RecipeTransferRect(new Rectangle(72, 54, 18, 18), getRecipeID(), new Object[0]));
+ }
+
+ public int recipiesPerPage() {
+ return 1;
+ }
+
+ public void drawBackground(int recipe) {
+ super.drawBackground(recipe);
+ GL11.glEnable(3042);
+ GL11.glColor4f(1.0F, 1.0F, 1.0F, 0.5F);
+ GuiDraw.changeTexture("botania:textures/gui/petalOverlay.png");
+ GuiDraw.drawTexturedModalRect(45, 10, 38, 7, 92, 92);
+ int mana = ((CachedAdvancedPlateRecipe)this.arecipes.get(recipe)).manaUsage;
+ ClientHelper.renderPoolManaBar(32, 112, 0x239ddc, 1.0f, mana, true);
+ }
+
+ public CachedAdvancedPlateRecipe getCachedRecipe(RecipeAdvancedPlate recipe) {
+ return new CachedAdvancedPlateRecipe(recipe);
+ }
+
+ public void loadCraftingRecipes(String outputId, Object... results) {
+ if (outputId.equals(getRecipeID())) {
+ for (RecipeAdvancedPlate recipe : AdvancedBotanyAPI.advancedPlateRecipes) {
+ this.arecipes.add(getCachedRecipe(recipe));
+ }
+ } else {
+ super.loadCraftingRecipes(outputId, results);
+ }
+ }
+
+ public void loadCraftingRecipes(ItemStack result) {
+ for (RecipeAdvancedPlate recipe : AdvancedBotanyAPI.advancedPlateRecipes) {
+ if (recipe == null)
+ continue;
+ if (((recipe.getOutput()).stackTagCompound != null && NEIServerUtils.areStacksSameType(recipe.getOutput(), result)) || ((recipe.getOutput()).stackTagCompound == null && NEIServerUtils.areStacksSameTypeCrafting(recipe.getOutput(), result)))
+ this.arecipes.add(getCachedRecipe(recipe));
+ }
+ }
+
+ public void loadUsageRecipes(ItemStack ingredient) {
+ for (RecipeAdvancedPlate recipe : AdvancedBotanyAPI.advancedPlateRecipes) {
+ if (recipe == null)
+ continue;
+ CachedAdvancedPlateRecipe crecipe = getCachedRecipe(recipe);
+ if(crecipe.contains(crecipe.getIngredients(), ingredient) || crecipe.contains(crecipe.getOtherStacks(), ingredient))
+ this.arecipes.add(crecipe);
+ }
+ }
+}
diff --git a/eclipse/.metadata/.plugins/org.eclipse.core.resources/.history/3d/20ea3f68bc84001c1c1eb532e283f688 b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.history/3d/20ea3f68bc84001c1c1eb532e283f688
new file mode 100644
index 0000000..6047b9f
--- /dev/null
+++ b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.history/3d/20ea3f68bc84001c1c1eb532e283f688
@@ -0,0 +1,105 @@
+package ab.client.core;
+
+import org.lwjgl.opengl.GL11;
+
+import net.minecraft.client.Minecraft;
+import net.minecraft.client.gui.ScaledResolution;
+import net.minecraft.client.renderer.RenderHelper;
+import net.minecraft.client.renderer.entity.RenderItem;
+import net.minecraft.item.ItemStack;
+import net.minecraft.util.StatCollector;
+import vazkii.botania.client.core.handler.HUDHandler;
+import vazkii.botania.common.block.ModBlocks;
+
+public class ClientHelper {
+
+ public static String getChanceName(int chance) {
+ String name = "";
+ switch((int)(chance / 16.6f)) {
+ case 0: name = "lowest";
+ break;
+ case 1: name = "veryLow";
+ break;
+ case 2: name = "low";
+ break;
+ case 3: name = "middle";
+ break;
+ case 4: name = "high";
+ break;
+ case 5: name = "veryHigh";
+ break;
+ case 6: name = "highest";
+ break;
+ }
+ return StatCollector.translateToLocal("ab.alphirine.change") + ": " + StatCollector.translateToLocal("ab.chance." + name);
+ }
+
+ public static void renderPoolManaBar(int x, int y, int color, float alpha, int mana) {
+ Minecraft mc = Minecraft.getMinecraft();
+ int poolCount = (int)Math.floor(mana / 1000000.0D);
+ if(poolCount < 0)
+ poolCount = 0;
+ int onePoolMana = mana - (poolCount * 1000000);
+ String strPool = poolCount + "x";
+ int xc = x - mc.fontRenderer.getStringWidth(strPool) / 2;
+ int yc = y;
+ GL11.glPushMatrix();
+ GL11.glTranslatef(xc + 42.0f, yc + 5.0f, 0.0f);
+ RenderHelper.enableGUIStandardItemLighting();
+ RenderItem.getInstance().renderItemAndEffectIntoGUI(mc.fontRenderer, mc.renderEngine, new ItemStack(ModBlocks.pool), 0, 0);
+ RenderHelper.disableStandardItemLighting();
+ GL11.glTranslatef(18.0f, 4.5f, 300.0f);
+ mc.fontRenderer.drawStringWithShadow(strPool, 0, 0, color);
+ GL11.glPopMatrix();
+ if((poolCount * 1000000) == mana)
+ onePoolMana = poolCount * 1000000;
+ HUDHandler.renderManaBar(x, y, color, alpha, onePoolMana, 1000000);
+ }
+
+ public static void drawPoolManaHUD(ScaledResolution res, String name, int mana, int color) {
+ Minecraft mc = Minecraft.getMinecraft();
+ int poolCount = (int)Math.floor(mana / 1000000.0D);
+ if(poolCount < 0)
+ poolCount = 0;
+ int onePoolMana = mana - (poolCount * 1000000);
+ String strPool = poolCount + "x";
+ int xc = res.getScaledWidth() / 2 - mc.fontRenderer.getStringWidth(strPool) / 2 - 3;
+ int yc = res.getScaledHeight() / 2;
+ GL11.glPushMatrix();
+ GL11.glTranslatef(xc - 6.0f, yc + 30.0f, 0.0f);
+ RenderHelper.enableGUIStandardItemLighting();
+ RenderItem.getInstance().renderItemAndEffectIntoGUI(mc.fontRenderer, mc.renderEngine, new ItemStack(ModBlocks.pool), 0, 0);
+ RenderHelper.disableStandardItemLighting();
+ GL11.glTranslatef(18.0f, 4.5f, 300.0f);
+ mc.fontRenderer.drawStringWithShadow(strPool, 0, 0, color);
+ GL11.glPopMatrix();
+ if((poolCount * 1000000) == mana)
+ onePoolMana = poolCount * 1000000;
+ HUDHandler.drawSimpleManaHUD(color, onePoolMana, 1000000, name, res);
+ }
+
+ public static void drawPoolManaHUD(ScaledResolution res, String name, int mana, int maxMana, int color) {
+ Minecraft mc = Minecraft.getMinecraft();
+ int poolCount = (int)Math.floor(mana / 1000000.0D);
+ int maxPoolCount = (int)Math.floor(maxMana / 1000000.0D);
+ if(poolCount < 0)
+ poolCount = 0;
+ if(maxPoolCount < 0)
+ maxPoolCount = 0;
+ int onePoolMana = mana - (poolCount * 1000000);
+ String strPool = poolCount + "x / " + maxPoolCount + "x";
+ int xc = res.getScaledWidth() / 2 - mc.fontRenderer.getStringWidth(strPool) / 2 - 3;
+ int yc = res.getScaledHeight() / 2;
+ GL11.glPushMatrix();
+ GL11.glTranslatef(xc - 6.0f, yc + 30.0f, 0.0f);
+ RenderHelper.enableGUIStandardItemLighting();
+ RenderItem.getInstance().renderItemAndEffectIntoGUI(mc.fontRenderer, mc.renderEngine, new ItemStack(ModBlocks.pool), 0, 0);
+ RenderHelper.disableStandardItemLighting();
+ GL11.glTranslatef(18.0f, 4.5f, 300.0f);
+ mc.fontRenderer.drawStringWithShadow(strPool, 0, 0, color);
+ GL11.glPopMatrix();
+ if((poolCount * 1000000) == mana)
+ onePoolMana = poolCount * 1000000;
+ HUDHandler.drawSimpleManaHUD(color, onePoolMana, 1000000, name, res);
+ }
+}
\ No newline at end of file
diff --git a/eclipse/.metadata/.plugins/org.eclipse.core.resources/.history/a9/00081ebebc84001c1c1eb532e283f688 b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.history/a9/00081ebebc84001c1c1eb532e283f688
new file mode 100644
index 0000000..ae26188
--- /dev/null
+++ b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.history/a9/00081ebebc84001c1c1eb532e283f688
@@ -0,0 +1,102 @@
+package ab.api.recipe.lexicon;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.lwjgl.opengl.GL11;
+
+import ab.api.recipe.RecipeAdvancedPlate;
+import ab.client.core.ClientHelper;
+import ab.common.lib.register.BlockListAB;
+import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
+import net.minecraft.client.Minecraft;
+import net.minecraft.client.gui.FontRenderer;
+import net.minecraft.client.gui.GuiScreen;
+import net.minecraft.client.renderer.texture.TextureManager;
+import net.minecraft.item.ItemStack;
+import net.minecraft.util.ResourceLocation;
+import net.minecraft.util.StatCollector;
+import vazkii.botania.api.internal.IGuiLexiconEntry;
+import vazkii.botania.api.lexicon.LexiconEntry;
+import vazkii.botania.api.lexicon.LexiconRecipeMappings;
+import vazkii.botania.client.core.handler.ClientTickHandler;
+import vazkii.botania.client.core.handler.HUDHandler;
+import vazkii.botania.common.core.handler.ConfigHandler;
+import vazkii.botania.common.lexicon.page.PageRecipe;
+
+public class AdvancedPlateCraftPage extends PageRecipe {
+
+ private static final ResourceLocation plateOverlay = new ResourceLocation("botania:textures/gui/petalOverlay.png");
+ private RecipeAdvancedPlate recipe;
+ int ticksElapsed = 0;
+
+ public AdvancedPlateCraftPage(RecipeAdvancedPlate recipe) {
+ super(".abCraft");
+ this.recipe = recipe;
+ }
+
+ public AdvancedPlateCraftPage(RecipeAdvancedPlate recipe, String str) {
+ super(".abCraft" + str);
+ this.recipe = recipe;
+ }
+
+ public void onPageAdded(LexiconEntry entry, int index) {
+ LexiconRecipeMappings.map(recipe.getOutput(), entry, index);
+ }
+
+ @SideOnly(Side.CLIENT)
+ public void renderRecipe(IGuiLexiconEntry gui, int mx, int my) {
+ TextureManager render = (Minecraft.getMinecraft()).renderEngine;
+ renderItemAtGridPos(gui, 3, 0, recipe.getOutput(), false);
+ renderItemAtGridPos(gui, 2, 1, new ItemStack(BlockListAB.blockABPlate), false);
+ List inputs = recipe.getInputs();
+ int degreePerInput = (int)(360.0F / inputs.size());
+ float currentDegree = ConfigHandler.lexiconRotatingItems ? (GuiScreen.isShiftKeyDown() ? this.ticksElapsed : (this.ticksElapsed + ClientTickHandler.partialTicks)) : 0.0F;
+ for (ItemStack obj : inputs) {
+ ItemStack copy = obj.copy();
+ if (copy.getItemDamage() == 32767)
+ copy.setItemDamage(0);
+ renderItemAtAngle(gui, currentDegree, copy);
+ currentDegree += degreePerInput;
+ }
+ renderManaBar(gui, mx, my);
+ render.bindTexture(plateOverlay);
+ GL11.glEnable(3042);
+ GL11.glBlendFunc(770, 771);
+ GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F);
+ ((GuiScreen)gui).drawTexturedModalRect(gui.getLeft(), gui.getTop(), 0, 0, gui.getWidth(), gui.getHeight());
+ GL11.glDisable(3042);
+ }
+
+ @SideOnly(Side.CLIENT)
+ public void renderManaBar(IGuiLexiconEntry gui, int mx, int my) {
+ FontRenderer font = (Minecraft.getMinecraft()).fontRenderer;
+ GL11.glEnable(3042);
+ GL11.glBlendFunc(770, 771);
+ String manaUsage = StatCollector.translateToLocal("botaniamisc.manaUsage");
+ font.drawString(manaUsage, gui.getLeft() + gui.getWidth() / 2 - font.getStringWidth(manaUsage) / 2, gui.getTop() + 105, 1711276032);
+ int x = gui.getLeft() + gui.getWidth() / 2 - 50;
+ int y = gui.getTop() + 120;
+ String stopStr = StatCollector.translateToLocal("botaniamisc.shiftToStopSpin");
+ ClientHelper.renderPoolManaBar(x, y - 5, 0x239ddc, 1.0f, this.recipe.getManaUsage(), false);
+ boolean unicode = font.getUnicodeFlag();
+ font.setUnicodeFlag(true);
+ font.drawString(stopStr, x + 49 - font.getStringWidth(stopStr) / 2, y + 18, -1728053248);
+ font.setUnicodeFlag(unicode);
+ GL11.glDisable(3042);
+ }
+
+ @SideOnly(Side.CLIENT)
+ public void updateScreen() {
+ if (GuiScreen.isShiftKeyDown())
+ return;
+ this.ticksElapsed++;
+ }
+
+ public List getDisplayedRecipes() {
+ ArrayList list = new ArrayList();
+ list.add(recipe.getOutput());
+ return list;
+ }
+}
diff --git a/eclipse/.metadata/.plugins/org.eclipse.core.resources/.history/b8/b0719c2fbd84001c1c1eb532e283f688 b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.history/b8/b0719c2fbd84001c1c1eb532e283f688
new file mode 100644
index 0000000..acb0d3f
--- /dev/null
+++ b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.history/b8/b0719c2fbd84001c1c1eb532e283f688
@@ -0,0 +1,105 @@
+package ab.client.core;
+
+import org.lwjgl.opengl.GL11;
+
+import net.minecraft.client.Minecraft;
+import net.minecraft.client.gui.ScaledResolution;
+import net.minecraft.client.renderer.RenderHelper;
+import net.minecraft.client.renderer.entity.RenderItem;
+import net.minecraft.item.ItemStack;
+import net.minecraft.util.StatCollector;
+import vazkii.botania.client.core.handler.HUDHandler;
+import vazkii.botania.common.block.ModBlocks;
+
+public class ClientHelper {
+
+ public static String getChanceName(int chance) {
+ String name = "";
+ switch((int)(chance / 16.6f)) {
+ case 0: name = "lowest";
+ break;
+ case 1: name = "veryLow";
+ break;
+ case 2: name = "low";
+ break;
+ case 3: name = "middle";
+ break;
+ case 4: name = "high";
+ break;
+ case 5: name = "veryHigh";
+ break;
+ case 6: name = "highest";
+ break;
+ }
+ return StatCollector.translateToLocal("ab.alphirine.change") + ": " + StatCollector.translateToLocal("ab.chance." + name);
+ }
+
+ public static void renderPoolManaBar(int x, int y, int color, float alpha, int mana) {
+ Minecraft mc = Minecraft.getMinecraft();
+ int poolCount = (int)Math.floor(mana / 1000000.0D);
+ if(poolCount < 0)
+ poolCount = 0;
+ int onePoolMana = mana - (poolCount * 1000000);
+ String strPool = poolCount + "x";
+ int xc = x - mc.fontRenderer.getStringWidth(strPool) / 2;
+ int yc = y;
+ GL11.glPushMatrix();
+ GL11.glTranslatef(xc + 42.0f, yc + 5.0f, 0.0f);
+ RenderHelper.enableGUIStandardItemLighting();
+ RenderItem.getInstance().renderItemAndEffectIntoGUI(mc.fontRenderer, mc.renderEngine, new ItemStack(ModBlocks.pool), 0, 0);
+ RenderHelper.disableStandardItemLighting();
+ GL11.glTranslatef(18.0f, 4.5f, 300.0f);
+ mc.fontRenderer.drawString(strPool, 0, 0, color);
+ GL11.glPopMatrix();
+ if((poolCount * 1000000) == mana)
+ onePoolMana = poolCount * 1000000;
+ HUDHandler.renderManaBar(x, y, color, alpha, onePoolMana, 1000000);
+ }
+
+ public static void drawPoolManaHUD(ScaledResolution res, String name, int mana, int color) {
+ Minecraft mc = Minecraft.getMinecraft();
+ int poolCount = (int)Math.floor(mana / 1000000.0D);
+ if(poolCount < 0)
+ poolCount = 0;
+ int onePoolMana = mana - (poolCount * 1000000);
+ String strPool = poolCount + "x";
+ int xc = res.getScaledWidth() / 2 - mc.fontRenderer.getStringWidth(strPool) / 2 - 3;
+ int yc = res.getScaledHeight() / 2;
+ GL11.glPushMatrix();
+ GL11.glTranslatef(xc - 6.0f, yc + 30.0f, 0.0f);
+ RenderHelper.enableGUIStandardItemLighting();
+ RenderItem.getInstance().renderItemAndEffectIntoGUI(mc.fontRenderer, mc.renderEngine, new ItemStack(ModBlocks.pool), 0, 0);
+ RenderHelper.disableStandardItemLighting();
+ GL11.glTranslatef(18.0f, 4.5f, 300.0f);
+ mc.fontRenderer.drawStringWithShadow(strPool, 0, 0, color);
+ GL11.glPopMatrix();
+ if((poolCount * 1000000) == mana)
+ onePoolMana = poolCount * 1000000;
+ HUDHandler.drawSimpleManaHUD(color, onePoolMana, 1000000, name, res);
+ }
+
+ public static void drawPoolManaHUD(ScaledResolution res, String name, int mana, int maxMana, int color) {
+ Minecraft mc = Minecraft.getMinecraft();
+ int poolCount = (int)Math.floor(mana / 1000000.0D);
+ int maxPoolCount = (int)Math.floor(maxMana / 1000000.0D);
+ if(poolCount < 0)
+ poolCount = 0;
+ if(maxPoolCount < 0)
+ maxPoolCount = 0;
+ int onePoolMana = mana - (poolCount * 1000000);
+ String strPool = poolCount + "x / " + maxPoolCount + "x";
+ int xc = res.getScaledWidth() / 2 - mc.fontRenderer.getStringWidth(strPool) / 2 - 3;
+ int yc = res.getScaledHeight() / 2;
+ GL11.glPushMatrix();
+ GL11.glTranslatef(xc - 6.0f, yc + 30.0f, 0.0f);
+ RenderHelper.enableGUIStandardItemLighting();
+ RenderItem.getInstance().renderItemAndEffectIntoGUI(mc.fontRenderer, mc.renderEngine, new ItemStack(ModBlocks.pool), 0, 0);
+ RenderHelper.disableStandardItemLighting();
+ GL11.glTranslatef(18.0f, 4.5f, 300.0f);
+ mc.fontRenderer.drawStringWithShadow(strPool, 0, 0, color);
+ GL11.glPopMatrix();
+ if((poolCount * 1000000) == mana)
+ onePoolMana = poolCount * 1000000;
+ HUDHandler.drawSimpleManaHUD(color, onePoolMana, 1000000, name, res);
+ }
+}
\ No newline at end of file
diff --git a/eclipse/.metadata/.plugins/org.eclipse.core.resources/.history/ca/a01e9a58c284001c19f4f792e956c083 b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.history/ca/a01e9a58c284001c19f4f792e956c083
new file mode 100644
index 0000000..fd84c20
--- /dev/null
+++ b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.history/ca/a01e9a58c284001c19f4f792e956c083
@@ -0,0 +1,63 @@
+buildscript {
+ repositories {
+ mavenCentral()
+ maven {
+ name = "forge"
+ url = "http://files.minecraftforge.net/maven"
+ }
+ maven {
+ name = "sonatype"
+ url = "https://oss.sonatype.org/content/repositories/snapshots/"
+ }
+ }
+ dependencies {
+ classpath 'net.minecraftforge.gradle:ForgeGradle:1.2-SNAPSHOT'
+ }
+}
+
+apply plugin: 'forge'
+
+version = "1.0"
+group= "com.yourname.modid" // http://maven.apache.org/guides/mini/guide-naming-conventions.html
+archivesBaseName = "modid"
+
+minecraft {
+ version = "1.7.10-10.13.4.1614-1.7.10"
+ runDir = "eclipse"
+}
+
+dependencies {
+ // you may put jars on which you depend on in ./libs
+ // or you may define them like so..
+ //compile "some.group:artifact:version:classifier"
+ //compile "some.group:artifact:version"
+
+ // real examples
+ //compile 'com.mod-buildcraft:buildcraft:6.0.8:dev' // adds buildcraft to the dev env
+ //compile 'com.googlecode.efficient-java-matrix-library:ejml:0.24' // adds ejml to the dev env
+
+ // for more info...
+ // http://www.gradle.org/docs/current/userguide/artifact_dependencies_tutorial.html
+ // http://www.gradle.org/docs/current/userguide/dependency_management.html
+ compile fileTree(dir: 'lib', include: ['*.jar'])
+}
+
+processResources
+{
+ // this will ensure that this task is redone when the versions change.
+ inputs.property "version", project.version
+ inputs.property "mcversion", project.minecraft.version
+
+ // replace stuff in mcmod.info, nothing else
+ from(sourceSets.main.resources.srcDirs) {
+ include 'mcmod.info'
+
+ // replace version and mcversion
+ expand 'version':project.version, 'mcversion':project.minecraft.version
+ }
+
+ // copy everything else, thats not the mcmod.info
+ from(sourceSets.main.resources.srcDirs) {
+ exclude 'mcmod.info'
+ }
+}
diff --git a/eclipse/.metadata/.plugins/org.eclipse.core.resources/.history/d4/0027ae78bc84001c1c1eb532e283f688 b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.history/d4/0027ae78bc84001c1c1eb532e283f688
new file mode 100644
index 0000000..3937bb5
--- /dev/null
+++ b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.history/d4/0027ae78bc84001c1c1eb532e283f688
@@ -0,0 +1,118 @@
+package ab.client.nei;
+
+import java.awt.Rectangle;
+import java.util.ArrayList;
+import java.util.List;
+import org.lwjgl.opengl.GL11;
+import ab.api.AdvancedBotanyAPI;
+import ab.api.recipe.RecipeAdvancedPlate;
+import ab.client.core.ClientHelper;
+import ab.client.nei.RecipeHandlerAlphirine.CachedHandlerAlphirine;
+import ab.common.lib.register.BlockListAB;
+import codechicken.lib.gui.GuiDraw;
+import codechicken.nei.NEIServerUtils;
+import codechicken.nei.PositionedStack;
+import codechicken.nei.recipe.TemplateRecipeHandler;
+import net.minecraft.client.Minecraft;
+import net.minecraft.client.gui.FontRenderer;
+import net.minecraft.item.ItemStack;
+import net.minecraft.util.StatCollector;
+
+public class RecipeHandlerAdvancedPlate extends TemplateRecipeHandler {
+
+ public class CachedAdvancedPlateRecipe extends TemplateRecipeHandler.CachedRecipe {
+
+ public List inputs = new ArrayList();
+ public PositionedStack output;
+ public int manaUsage;
+
+ public CachedAdvancedPlateRecipe(RecipeAdvancedPlate recipe) {
+ setIngredients(recipe.getInputs());
+ this.output = new PositionedStack(recipe.getOutput(), 111, 21);
+ this.inputs.add(new PositionedStack(new ItemStack(BlockListAB.blockABPlate), 73, 55));
+ this.manaUsage = recipe.getManaUsage();
+ }
+
+ public void setIngredients(List inputs) {
+ float degreePerInput = 360.0F / inputs.size();
+ float currentDegree = -90.0F;
+ for (Object o : inputs) {
+ int posX = (int)Math.round(73.0D + Math.cos(currentDegree * Math.PI / 180.0D) * 32.0D);
+ int posY = (int)Math.round(55.0D + Math.sin(currentDegree * Math.PI / 180.0D) * 32.0D);
+ this.inputs.add(new PositionedStack(o, posX, posY));
+ currentDegree += degreePerInput;
+ }
+ }
+
+ public List getIngredients() {
+ return getCycledIngredients(RecipeHandlerAdvancedPlate.this.cycleticks / 20, this.inputs);
+ }
+
+ public PositionedStack getResult() {
+ return this.output;
+ }
+ }
+
+ public String getRecipeName() {
+ return StatCollector.translateToLocal("ab.nei.advancedPlate");
+ }
+
+ public String getRecipeID() {
+ return "ab.advancedPlate";
+ }
+
+ public String getGuiTexture() {
+ return "botania:textures/gui/neiBlank.png";
+ }
+
+ public void loadTransferRects() {
+ this.transferRects.add(new TemplateRecipeHandler.RecipeTransferRect(new Rectangle(72, 54, 18, 18), getRecipeID(), new Object[0]));
+ }
+
+ public int recipiesPerPage() {
+ return 1;
+ }
+
+ public void drawBackground(int recipe) {
+ super.drawBackground(recipe);
+ GL11.glEnable(3042);
+ GL11.glColor4f(1.0F, 1.0F, 1.0F, 0.5F);
+ GuiDraw.changeTexture("botania:textures/gui/petalOverlay.png");
+ GuiDraw.drawTexturedModalRect(45, 10, 38, 7, 92, 92);
+ int mana = ((CachedAdvancedPlateRecipe)this.arecipes.get(recipe)).manaUsage;
+ ClientHelper.renderPoolManaBar(32, 112, 0x239ddc, 1.0f, mana);
+ }
+
+ public CachedAdvancedPlateRecipe getCachedRecipe(RecipeAdvancedPlate recipe) {
+ return new CachedAdvancedPlateRecipe(recipe);
+ }
+
+ public void loadCraftingRecipes(String outputId, Object... results) {
+ if (outputId.equals(getRecipeID())) {
+ for (RecipeAdvancedPlate recipe : AdvancedBotanyAPI.advancedPlateRecipes) {
+ this.arecipes.add(getCachedRecipe(recipe));
+ }
+ } else {
+ super.loadCraftingRecipes(outputId, results);
+ }
+ }
+
+ public void loadCraftingRecipes(ItemStack result) {
+ for (RecipeAdvancedPlate recipe : AdvancedBotanyAPI.advancedPlateRecipes) {
+ if (recipe == null)
+ continue;
+ if (((recipe.getOutput()).stackTagCompound != null && NEIServerUtils.areStacksSameType(recipe.getOutput(), result)) || ((recipe.getOutput()).stackTagCompound == null && NEIServerUtils.areStacksSameTypeCrafting(recipe.getOutput(), result)))
+ this.arecipes.add(getCachedRecipe(recipe));
+ }
+ }
+
+ public void loadUsageRecipes(ItemStack ingredient) {
+ for (RecipeAdvancedPlate recipe : AdvancedBotanyAPI.advancedPlateRecipes) {
+ if (recipe == null)
+ continue;
+ CachedAdvancedPlateRecipe crecipe = getCachedRecipe(recipe);
+ if(crecipe.contains(crecipe.getIngredients(), ingredient) || crecipe.contains(crecipe.getOtherStacks(), ingredient))
+ this.arecipes.add(crecipe);
+ }
+ }
+}
diff --git a/eclipse/.metadata/.plugins/org.eclipse.core.resources/.history/d4/b0bdbb82bd84001c1c1eb532e283f688 b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.history/d4/b0bdbb82bd84001c1c1eb532e283f688
new file mode 100644
index 0000000..c9bff45
--- /dev/null
+++ b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.history/d4/b0bdbb82bd84001c1c1eb532e283f688
@@ -0,0 +1,104 @@
+package ab.client.core.proxy;
+
+import ab.client.core.ClientHandler;
+import ab.client.core.HudRender;
+import ab.client.render.block.RenderBlockABSpreader;
+import ab.client.render.block.RenderBlockManaCharger;
+import ab.client.render.block.RenderBlockManaContainer;
+import ab.client.render.block.RenderBlockManaCrystalCube;
+import ab.client.render.entity.EntityNullRender;
+import ab.client.render.entity.RenderEntityAdvancedSpark;
+import ab.client.render.entity.RenderManaVine;
+import ab.client.render.item.RenderAntigravityCharm;
+import ab.client.render.tile.RenderModifiedFunnel;
+import ab.client.render.tile.RenderModifiedInterrupter;
+import ab.client.render.tile.RenderModifiedRetainer;
+import ab.client.render.tile.RenderTileABSpreader;
+import ab.client.render.tile.RenderTileAgglomerationPlate;
+import ab.client.render.tile.RenderTileCorporeaCatalyst;
+import ab.client.render.tile.RenderTileManaCharger;
+import ab.client.render.tile.RenderTileManaContainer;
+import ab.client.render.tile.RenderTileManaCrystalCube;
+import ab.client.render.tile.RenderTileModifiedInterceptor;
+import ab.common.block.tile.TileABSpreader;
+import ab.common.block.tile.TileAgglomerationPlate;
+import ab.common.block.tile.TileCorporeaCatalyst;
+import ab.common.block.tile.TileCorporeaInterrupter;
+import ab.common.block.tile.TileManaCharger;
+import ab.common.block.tile.TileManaContainer;
+import ab.common.block.tile.TileManaCrystalCube;
+import ab.common.block.tile.TileModifiedCorporeaFunnel;
+import ab.common.block.tile.TileModifiedInterceptor;
+import ab.common.block.tile.TileModifiedRetainer;
+import ab.common.core.proxy.CommonProxy;
+import ab.common.entity.EntityAdvancedSpark;
+import ab.common.entity.EntityManaVine;
+import ab.common.entity.EntityNebulaBlaze;
+import ab.common.lib.register.BlockListAB;
+import ab.common.lib.register.ItemListAB;
+import cpw.mods.fml.client.registry.ClientRegistry;
+import cpw.mods.fml.client.registry.RenderingRegistry;
+import cpw.mods.fml.common.FMLCommonHandler;
+import cpw.mods.fml.common.event.FMLInitializationEvent;
+import cpw.mods.fml.common.event.FMLPostInitializationEvent;
+import cpw.mods.fml.common.event.FMLPreInitializationEvent;
+import net.minecraft.client.renderer.entity.Render;
+import net.minecraft.item.ItemStack;
+import net.minecraftforge.client.MinecraftForgeClient;
+import net.minecraftforge.common.MinecraftForge;
+
+public class ClientProxy extends CommonProxy {
+
+ public void preInit(FMLPreInitializationEvent event) {
+ super.preInit(event);
+ }
+
+ @Override
+ public void init(FMLInitializationEvent event) {
+ super.init(event);
+
+ FMLCommonHandler.instance().bus().register(new ClientHandler());
+ MinecraftForge.EVENT_BUS.register(new HudRender());
+
+ ClientRegistry.bindTileEntitySpecialRenderer(TileAgglomerationPlate.class, new RenderTileAgglomerationPlate());
+ ClientRegistry.bindTileEntitySpecialRenderer(TileABSpreader.class, new RenderTileABSpreader());
+ ClientRegistry.bindTileEntitySpecialRenderer(TileManaContainer.class, new RenderTileManaContainer());
+ ClientRegistry.bindTileEntitySpecialRenderer(TileManaCrystalCube.class, new RenderTileManaCrystalCube());
+ ClientRegistry.bindTileEntitySpecialRenderer(TileManaCharger.class, new RenderTileManaCharger());
+
+ ClientRegistry.bindTileEntitySpecialRenderer(TileCorporeaCatalyst.class, new RenderTileCorporeaCatalyst());
+ ClientRegistry.bindTileEntitySpecialRenderer(TileModifiedCorporeaFunnel.class, new RenderModifiedFunnel());
+ ClientRegistry.bindTileEntitySpecialRenderer(TileCorporeaInterrupter.class, new RenderModifiedInterrupter());
+ ClientRegistry.bindTileEntitySpecialRenderer(TileModifiedInterceptor.class, new RenderTileModifiedInterceptor());
+ ClientRegistry.bindTileEntitySpecialRenderer(TileModifiedRetainer.class, new RenderModifiedRetainer());
+
+ BlockListAB.blockABSpreaderRI = RenderingRegistry.getNextAvailableRenderId();
+ BlockListAB.blockManaContainerRI = RenderingRegistry.getNextAvailableRenderId();
+ BlockListAB.blockManaCrystalCubeRI = RenderingRegistry.getNextAvailableRenderId();
+ BlockListAB.blockManaChargerRI = RenderingRegistry.getNextAvailableRenderId();
+
+ BlockListAB.blockCorporeaCatalystRI = RenderingRegistry.getNextAvailableRenderId();
+ BlockListAB.blockModifiedCorporeaFunnelRI = RenderingRegistry.getNextAvailableRenderId();
+ BlockListAB.blockModifiedCorporeaInterrupterRI = RenderingRegistry.getNextAvailableRenderId();
+ BlockListAB.blockModifiedCorporeaInterceptorRI = RenderingRegistry.getNextAvailableRenderId();
+
+ RenderingRegistry.registerBlockHandler(new RenderBlockABSpreader());
+ RenderingRegistry.registerBlockHandler(new RenderBlockManaContainer());
+ RenderingRegistry.registerBlockHandler(new RenderBlockManaCrystalCube());
+ RenderingRegistry.registerBlockHandler(new RenderBlockManaCharger());
+
+ RenderingRegistry.registerEntityRenderingHandler(EntityAdvancedSpark.class, new RenderEntityAdvancedSpark());
+ RenderingRegistry.registerEntityRenderingHandler(EntityNebulaBlaze.class, new EntityNullRender());
+ RenderingRegistry.registerEntityRenderingHandler(EntityManaVine.class, (Render)new RenderManaVine());
+
+ MinecraftForgeClient.registerItemRenderer(ItemListAB.itemAntigravityCharm, new RenderAntigravityCharm());
+
+// ItemStack error = null;
+// System.out.println(error.stackSize);
+ }
+
+ @Override
+ public void postInit(FMLPostInitializationEvent event) {
+ super.postInit(event);
+ }
+}
\ No newline at end of file
diff --git a/eclipse/.metadata/.plugins/org.eclipse.core.resources/.history/d8/80d90821c384001c19f4f792e956c083 b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.history/d8/80d90821c384001c19f4f792e956c083
new file mode 100644
index 0000000..fc87f08
--- /dev/null
+++ b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.history/d8/80d90821c384001c19f4f792e956c083
@@ -0,0 +1,254 @@
+package ab.common.block.tile;
+
+import java.awt.Color;
+import java.util.List;
+import java.util.Random;
+
+import org.lwjgl.opengl.GL11;
+
+import ab.api.IRenderHud;
+import ab.client.core.ClientHelper;
+import net.minecraft.client.Minecraft;
+import net.minecraft.client.gui.Gui;
+import net.minecraft.client.gui.ScaledResolution;
+import net.minecraft.client.renderer.RenderHelper;
+import net.minecraft.client.renderer.entity.RenderItem;
+import net.minecraft.entity.Entity;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.entity.player.EntityPlayerMP;
+import net.minecraft.inventory.ISidedInventory;
+import net.minecraft.item.ItemStack;
+import net.minecraft.nbt.NBTTagCompound;
+import net.minecraft.network.Packet;
+import net.minecraft.network.play.server.S35PacketUpdateTileEntity;
+import net.minecraft.tileentity.TileEntity;
+import net.minecraft.util.AxisAlignedBB;
+import net.minecraft.util.ChunkCoordinates;
+import net.minecraft.util.StatCollector;
+import vazkii.botania.api.internal.VanillaPacketDispatcher;
+import vazkii.botania.api.mana.IManaItem;
+import vazkii.botania.api.mana.IManaReceiver;
+import vazkii.botania.api.mana.spark.ISparkAttachable;
+import vazkii.botania.api.mana.spark.ISparkEntity;
+import vazkii.botania.api.wand.IWandBindable;
+import vazkii.botania.client.core.handler.ClientTickHandler;
+import vazkii.botania.client.core.handler.HUDHandler;
+import vazkii.botania.common.block.ModBlocks;
+import vazkii.botania.common.block.tile.TileSimpleInventory;
+import vazkii.botania.common.core.helper.Vector3;
+
+public class TileManaCharger extends TileSimpleInventory implements ISidedInventory, IRenderHud, IWandBindable {
+
+ private static final int MANA_SPEED = 11240;
+
+ public boolean requestsClientUpdate = false;
+ int clientMana = -1;
+ int receiverPosX = -1;
+ int receiverPosY = -1;
+ int receiverPosZ = -1;
+ public int clientTick[] = new int[] {0, 0, 3, 12, 6};
+
+ public void updateEntity() {
+ if(requestsClientUpdate && !this.worldObj.isRemote && this.worldObj.getTotalWorldTime() % 15 == 0) {
+ VanillaPacketDispatcher.dispatchTEToNearbyPlayers(this.worldObj, this.xCoord, this.yCoord, this.zCoord);
+ requestsClientUpdate = false;
+ }
+ ISparkAttachable receiver = this.getReceiver();
+ if(receiver == null)
+ return;
+ for(int i = 0; i < this.getSizeInventory(); i++) {
+ ItemStack stack = this.getStackInSlot(i);
+ if(stack == null)
+ continue;
+ else if(stack.getItem() instanceof IManaItem) {
+ IManaItem mana = (IManaItem)stack.getItem();
+ if(i == 0) {
+ if(mana.getMana(stack) > 0 && !receiver.isFull() && mana.canExportManaToPool(stack, (TileEntity)receiver)) {
+ int availableMana = ((ISparkAttachable)receiver).getAvailableSpaceForMana();
+ int manaVal = Math.min(Math.min(mana.getMaxMana(stack) / 256, MANA_SPEED) * 3, Math.min(availableMana, mana.getMana(stack)));
+ if(!this.worldObj.isRemote) {
+ mana.addMana(stack, -manaVal);
+ requestsClientUpdate = true;
+ } else {
+ clientTick[i]++;
+ }
+ receiver.recieveMana(manaVal);
+ }
+ continue;
+ }
+ else if(receiver.getCurrentMana() > 0 && mana.getMana(stack) < mana.getMaxMana(stack) && mana.canReceiveManaFromPool(stack, (TileEntity)receiver)) {
+ int manaVal = Math.min(Math.min(mana.getMaxMana(stack) / 256, MANA_SPEED), Math.min(receiver.getCurrentMana(), mana.getMaxMana(stack) - mana.getMana(stack)));
+ if(!this.worldObj.isRemote) {
+ mana.addMana(stack, manaVal);
+ requestsClientUpdate = true;
+ } else {
+ clientTick[i]++;
+ }
+ receiver.recieveMana(-manaVal);
+ }
+ }
+ }
+ }
+
+ public ISparkAttachable getReceiver() {
+ if(this.worldObj != null && this.receiverPosY != -1) {
+ TileEntity tile = this.worldObj.getTileEntity(receiverPosX, receiverPosY, receiverPosZ);
+ if(tile != null && tile instanceof ISparkAttachable) {
+ return (ISparkAttachable)tile;
+ }
+ }
+ return null;
+ }
+
+ public boolean canSelect(EntityPlayer player, ItemStack wand, int x, int y, int z, int side) {
+ return true;
+ }
+
+ public boolean bindTo(EntityPlayer player, ItemStack wand, int x, int y, int z, int side) {
+ TileEntity tile = this.worldObj.getTileEntity(x, y, z);
+ boolean isFar = Math.abs(this.xCoord - x) >= 16 || Math.abs(this.yCoord - y) >= 16 || Math.abs(this.zCoord - z) >= 16;
+ if(isFar)
+ return false;
+ else if(tile instanceof ISparkAttachable) {
+ if(!this.worldObj.isRemote) {
+ this.receiverPosX = tile.xCoord;
+ this.receiverPosY = tile.yCoord;
+ this.receiverPosZ = tile.zCoord;
+ VanillaPacketDispatcher.dispatchTEToNearbyPlayers(this.worldObj, this.xCoord, this.yCoord, this.zCoord);
+ }
+ return true;
+ }
+ return false;
+ }
+
+ public ChunkCoordinates getBinding() {
+ IManaReceiver receiver = this.getReceiver();
+ if (receiver == null)
+ return null;
+ TileEntity tile = (TileEntity)receiver;
+ return new ChunkCoordinates(tile.xCoord, tile.yCoord, tile.zCoord);
+ }
+
+ public static float getManaPercent(ItemStack stack) {
+ if(!(stack.getItem() instanceof IManaItem))
+ return 0.0f;
+ IManaItem mana = (IManaItem)stack.getItem();
+ return (float)mana.getMana(stack) / (mana.getMaxMana(stack) / 100.0f);
+ }
+
+ public void renderHud(Minecraft mc, ScaledResolution res) {
+ int xc = res.getScaledWidth() / 2;
+ int yc = res.getScaledHeight() / 2;
+ int radius = 42;
+ int amt = 0;
+ for(int i = 0; i < getSizeInventory(); i++)
+ if(getStackInSlot(i) != null)
+ amt++;
+ float angle = -90.0f;
+ if(amt >= 0) {
+ for (int i = 0; i < getSizeInventory(); i++) {
+ ItemStack stack = getStackInSlot(i);
+ if(stack == null)
+ continue;
+ float anglePer = 360.0F / amt;
+ double xPos = xc + Math.cos(angle * Math.PI / 180.0D) * radius - 8.0D;
+ double yPos = yc + Math.sin(angle * Math.PI / 180.0D) * radius - 8.0D;
+ RenderHelper.enableGUIStandardItemLighting();
+ GL11.glPushMatrix();
+ GL11.glEnable(3042);
+ GL11.glBlendFunc(770, 771);
+ GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F);
+ GL11.glTranslated(xPos, yPos, 0.0D);
+ vazkii.botania.client.core.helper.RenderHelper.renderProgressPie(0, 0, getManaPercent(stack) / 100.0f, stack);
+ if(i == 0) {
+ GL11.glScalef(0.75f, 0.75f, 0.75f);
+ GL11.glTranslated(11.0D, 10.0D, 0.0D);
+ RenderHelper.enableGUIStandardItemLighting();
+ RenderItem.getInstance().renderItemAndEffectIntoGUI(mc.fontRenderer, mc.renderEngine, new ItemStack(ModBlocks.pool), 0, 0);
+ }
+ GL11.glDisable(2896);
+ GL11.glDisable(3042);
+ GL11.glPopMatrix();
+ RenderHelper.disableStandardItemLighting();
+ angle += anglePer;
+ }
+ }
+ }
+
+ public void onWanded(EntityPlayer player, ItemStack wand) {
+ ISparkAttachable reciever = getReceiver();
+ if(player == null)
+ return;
+ if(this.worldObj.isRemote && reciever != null)
+ clientMana = reciever.getCurrentMana();
+ this.worldObj.playSoundAtEntity((Entity)player, "botania:ding", 0.11F, 1.0F);
+ }
+
+ public void renderHUD(Minecraft mc, ScaledResolution res) {
+ ISparkAttachable reciever = getReceiver();
+ if (reciever != null) {
+ TileEntity receiverTile = (TileEntity)reciever;
+ ItemStack recieverStack = new ItemStack(this.worldObj.getBlock(receiverTile.xCoord, receiverTile.yCoord, receiverTile.zCoord), 1, receiverTile.getBlockMetadata());
+ GL11.glEnable(3042);
+ GL11.glBlendFunc(770, 771);
+ if (recieverStack != null && recieverStack.getItem() != null) {
+ String stackName = recieverStack.getDisplayName();
+ int width = 16 + mc.fontRenderer.getStringWidth(stackName) / 2;
+ int x = res.getScaledWidth() / 2 - width;
+ int y = res.getScaledHeight() / 2 + 48;
+ mc.fontRenderer.drawStringWithShadow(stackName, x + 20, y + 5, 0xf4f4f4);
+ RenderHelper.enableGUIStandardItemLighting();
+ RenderItem.getInstance().renderItemAndEffectIntoGUI(mc.fontRenderer, mc.renderEngine, recieverStack, x, y);
+ RenderHelper.disableStandardItemLighting();
+ }
+ GL11.glDisable(2896);
+ GL11.glDisable(3042);
+ ClientHelper.drawPoolManaHUD(res, "ab.manaCharger.wandHud", clientMana, reciever.getAvailableSpaceForMana() + reciever.getCurrentMana(), 0xb9bbae);
+ }
+ }
+
+ public int getSizeInventory() {
+ return 5;
+ }
+
+ public int getInventoryStackLimit() {
+ return 1;
+ }
+
+ public String getInventoryName() {
+ return "ab.manaCharger";
+ }
+
+ public void writeCustomNBT(NBTTagCompound nbtt) {
+ super.writeCustomNBT(nbtt);
+ nbtt.setInteger("bindingX", this.receiverPosX);
+ nbtt.setInteger("bindingY", this.receiverPosY);
+ nbtt.setInteger("bindingZ", this.receiverPosZ);
+ nbtt.setBoolean("requestUpdate", this.requestsClientUpdate);
+ this.requestsClientUpdate = false;
+ }
+
+ public void readFromNBT(NBTTagCompound nbtt) {
+ super.readFromNBT(nbtt);
+ this.requestsClientUpdate = nbtt.getBoolean("requestUpdate");
+ }
+
+ public void readCustomNBT(NBTTagCompound nbtt) {
+ super.readCustomNBT(nbtt);
+ this.receiverPosX = nbtt.getInteger("bindingX");
+ this.receiverPosY = nbtt.getInteger("bindingY");
+ this.receiverPosZ = nbtt.getInteger("bindingZ");
+ }
+
+ public int[] getAccessibleSlotsFromSide(int side) {
+ return new int[0];
+ }
+
+ public boolean canInsertItem(int slot, ItemStack stack, int side) {
+ return false;
+ }
+
+ public boolean canExtractItem(int slot, ItemStack stack, int side) {
+ return false;
+ }
+}
\ No newline at end of file
diff --git a/eclipse/.metadata/.plugins/org.eclipse.core.resources/.projects/.org.eclipse.egit.core.cmp/.location b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.projects/.org.eclipse.egit.core.cmp/.location
new file mode 100644
index 0000000..e718c0d
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.projects/.org.eclipse.egit.core.cmp/.location differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.core.resources/.projects/.org.eclipse.egit.core.cmp/.markers.snap b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.projects/.org.eclipse.egit.core.cmp/.markers.snap
new file mode 100644
index 0000000..b9a8e2c
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.projects/.org.eclipse.egit.core.cmp/.markers.snap differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.core.resources/.projects/.org.eclipse.egit.core.cmp/.syncinfo.snap b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.projects/.org.eclipse.egit.core.cmp/.syncinfo.snap
new file mode 100644
index 0000000..b9a8e2c
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.projects/.org.eclipse.egit.core.cmp/.syncinfo.snap differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.core.resources/.projects/.org.eclipse.jdt.core.external.folders/.location b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.projects/.org.eclipse.jdt.core.external.folders/.location
new file mode 100644
index 0000000..7b89dc9
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.projects/.org.eclipse.jdt.core.external.folders/.location differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.core.resources/.projects/.org.eclipse.jdt.core.external.folders/.markers.snap b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.projects/.org.eclipse.jdt.core.external.folders/.markers.snap
new file mode 100644
index 0000000..b9a8e2c
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.projects/.org.eclipse.jdt.core.external.folders/.markers.snap differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.core.resources/.projects/.org.eclipse.jdt.core.external.folders/.syncinfo.snap b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.projects/.org.eclipse.jdt.core.external.folders/.syncinfo.snap
new file mode 100644
index 0000000..b9a8e2c
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.projects/.org.eclipse.jdt.core.external.folders/.syncinfo.snap differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.core.resources/.projects/Minecraft/.indexes/e4/b9/22/21/15/8d/ae/history.index b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.projects/Minecraft/.indexes/e4/b9/22/21/15/8d/ae/history.index
new file mode 100644
index 0000000..5524347
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.projects/Minecraft/.indexes/e4/b9/22/21/15/8d/ae/history.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.core.resources/.projects/Minecraft/.indexes/e4/b9/22/21/1a/72/18/history.index b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.projects/Minecraft/.indexes/e4/b9/22/21/1a/72/18/history.index
new file mode 100644
index 0000000..0b20458
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.projects/Minecraft/.indexes/e4/b9/22/21/1a/72/18/history.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.core.resources/.projects/Minecraft/.indexes/e4/b9/22/21/35/92/history.index b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.projects/Minecraft/.indexes/e4/b9/22/21/35/92/history.index
new file mode 100644
index 0000000..da47f3a
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.projects/Minecraft/.indexes/e4/b9/22/21/35/92/history.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.core.resources/.projects/Minecraft/.indexes/e4/b9/22/21/35/9f/6e/history.index b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.projects/Minecraft/.indexes/e4/b9/22/21/35/9f/6e/history.index
new file mode 100644
index 0000000..7320377
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.projects/Minecraft/.indexes/e4/b9/22/21/35/9f/6e/history.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.core.resources/.projects/Minecraft/.indexes/e4/b9/22/21/35/9f/history.index b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.projects/Minecraft/.indexes/e4/b9/22/21/35/9f/history.index
new file mode 100644
index 0000000..412023d
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.projects/Minecraft/.indexes/e4/b9/22/21/35/9f/history.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.core.resources/.projects/Minecraft/.indexes/history.index b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.projects/Minecraft/.indexes/history.index
new file mode 100644
index 0000000..f3f5600
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.projects/Minecraft/.indexes/history.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.core.resources/.projects/Minecraft/.location b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.projects/Minecraft/.location
new file mode 100644
index 0000000..1639a9d
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.projects/Minecraft/.location differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.core.resources/.projects/Minecraft/.markers b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.projects/Minecraft/.markers
new file mode 100644
index 0000000..d389e52
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.projects/Minecraft/.markers differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.core.resources/.projects/Minecraft/.markers.snap b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.projects/Minecraft/.markers.snap
new file mode 100644
index 0000000..06d0c82
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.projects/Minecraft/.markers.snap differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.core.resources/.projects/Minecraft/.syncinfo.snap b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.projects/Minecraft/.syncinfo.snap
new file mode 100644
index 0000000..b9a8e2c
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.projects/Minecraft/.syncinfo.snap differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/history.version b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/history.version
new file mode 100644
index 0000000..25cb955
--- /dev/null
+++ b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/history.version
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/eclipse/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.index b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.index
new file mode 100644
index 0000000..93caab8
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.version b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.version
new file mode 100644
index 0000000..6b2aaa7
--- /dev/null
+++ b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.version
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/eclipse/.metadata/.plugins/org.eclipse.core.resources/.root/.markers.snap b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.root/.markers.snap
new file mode 100644
index 0000000..a938508
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.root/.markers.snap differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.core.resources/.root/5.tree b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.root/5.tree
new file mode 100644
index 0000000..fa4bb3a
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.root/5.tree differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.core.resources/.safetable/org.eclipse.core.resources b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.safetable/org.eclipse.core.resources
new file mode 100644
index 0000000..13e9d59
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.core.resources/.safetable/org.eclipse.core.resources differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.core.resources/5.snap b/eclipse/.metadata/.plugins/org.eclipse.core.resources/5.snap
new file mode 100644
index 0000000..5d26694
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.core.resources/5.snap differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.core.resources.prefs b/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 0000000..466d7f9
--- /dev/null
+++ b/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,4 @@
+#Sun Jun 05 18:58:07 CEST 2011
+version=1
+eclipse.preferences.version=1
+refresh.enabled=true
diff --git a/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.debug.ui.prefs b/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.debug.ui.prefs
new file mode 100644
index 0000000..af02aa3
--- /dev/null
+++ b/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.debug.ui.prefs
@@ -0,0 +1,7 @@
+Console.highWaterMark=88000
+StringVariablePreferencePage=130,107,107,86,
+eclipse.preferences.version=1
+org.eclipse.debug.ui.PREF_LAUNCH_PERSPECTIVES=\r\n\r\n
+org.eclipse.debug.ui.UseContextualLaunch=false
+org.eclipse.debug.ui.user_view_bindings=\r\n\r\n\r\n\r\n\r\n\r\n
+preferredTargets=default\:default|
diff --git a/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.epp.usagedata.gathering.prefs b/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.epp.usagedata.gathering.prefs
new file mode 100644
index 0000000..333b991
--- /dev/null
+++ b/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.epp.usagedata.gathering.prefs
@@ -0,0 +1,3 @@
+#Sun Jun 05 18:58:07 CEST 2011
+eclipse.preferences.version=1
+org.eclipse.epp.usagedata.gathering.enabled=false
diff --git a/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.core.prefs b/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000..90550e3
--- /dev/null
+++ b/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,17 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.classpathVariable.JRE_LIB=C\:/Program Files/Java/jre1.8.0_311/lib/rt.jar
+org.eclipse.jdt.core.classpathVariable.JRE_SRC=
+org.eclipse.jdt.core.classpathVariable.JRE_SRCROOT=
+org.eclipse.jdt.core.codeComplete.visibilityCheck=enabled
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
+org.eclipse.jdt.core.compiler.compliance=1.6
+org.eclipse.jdt.core.compiler.problem.deprecation=ignore
+org.eclipse.jdt.core.compiler.problem.missingSerialVersion=ignore
+org.eclipse.jdt.core.compiler.problem.rawTypeReference=ignore
+org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=ignore
+org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=ignore
+org.eclipse.jdt.core.compiler.problem.unusedImport=ignore
+org.eclipse.jdt.core.compiler.problem.unusedLocal=ignore
+org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=ignore
+org.eclipse.jdt.core.compiler.source=1.6
diff --git a/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.junit.prefs b/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.junit.prefs
new file mode 100644
index 0000000..31df02c
--- /dev/null
+++ b/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.junit.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.junit.content_assist_favorite_static_members_migrated=true
diff --git a/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.launching.prefs b/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.launching.prefs
new file mode 100644
index 0000000..438cad6
--- /dev/null
+++ b/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.launching.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.launching.PREF_VM_XML=\r\n\r\n \r\n \r\n \r\n \r\n\r\n
diff --git a/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.ui.prefs b/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.ui.prefs
new file mode 100644
index 0000000..7455569
--- /dev/null
+++ b/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.ui.prefs
@@ -0,0 +1,9 @@
+content_assist_number_of_computers=12
+content_assist_proposals_background=255,255,255
+content_assist_proposals_foreground=0,0,0
+eclipse.preferences.version=1
+org.eclipse.jdt.ui.formatterprofiles.version=21
+spelling_locale_initialized=true
+typefilter_migrated_2=true
+useAnnotationsPrefPage=true
+useQuickDiffPrefPage=true
diff --git a/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jsch.core.prefs b/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jsch.core.prefs
new file mode 100644
index 0000000..d56c53f
--- /dev/null
+++ b/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jsch.core.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+org.eclipse.jsch.core.hasChangedDefaultWin32SshHome=true
diff --git a/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.m2e.discovery.prefs b/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.m2e.discovery.prefs
new file mode 100644
index 0000000..67b1d96
--- /dev/null
+++ b/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.m2e.discovery.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+org.eclipse.m2e.discovery.pref.projects=
diff --git a/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.editors.prefs b/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.editors.prefs
new file mode 100644
index 0000000..316ef6f
--- /dev/null
+++ b/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.editors.prefs
@@ -0,0 +1,4 @@
+#Sun Jun 05 18:58:05 CEST 2011
+spacesForTabs=true
+eclipse.preferences.version=1
+overviewRuler_migration=migrated_3.1
diff --git a/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.ide.prefs b/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.ide.prefs
new file mode 100644
index 0000000..2cfb651
--- /dev/null
+++ b/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.ide.prefs
@@ -0,0 +1,8 @@
+IMPORT_FILES_AND_FOLDERS_MODE=prompt
+IMPORT_FILES_AND_FOLDERS_VIRTUAL_FOLDER_MODE=prompt
+PROBLEMS_FILTERS_MIGRATE=true
+SAVE_ALL_BEFORE_BUILD=true
+eclipse.preferences.version=1
+platformState=1640707848358
+quickStart=false
+tipsAndTricks=true
diff --git a/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.prefs b/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.prefs
new file mode 100644
index 0000000..cbc5953
--- /dev/null
+++ b/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.prefs
@@ -0,0 +1,3 @@
+#Sun Jun 05 18:50:08 CEST 2011
+eclipse.preferences.version=1
+showIntro=false
diff --git a/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.workbench.prefs b/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.workbench.prefs
new file mode 100644
index 0000000..b85d0db
--- /dev/null
+++ b/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.workbench.prefs
@@ -0,0 +1,9 @@
+//org.eclipse.ui.commands/state/org.eclipse.ui.navigator.resources.nested.changeProjectPresentation/org.eclipse.ui.commands.radioState=false
+PLUGINS_NOT_ACTIVATED_ON_STARTUP=;org.eclipse.m2e.discovery;
+eclipse.preferences.version=1
+org.eclipse.ui.workbench.ACTIVE_NOFOCUS_TAB_BG_END=255,255,255
+org.eclipse.ui.workbench.ACTIVE_NOFOCUS_TAB_BG_START=255,255,255
+org.eclipse.ui.workbench.ACTIVE_NOFOCUS_TAB_TEXT_COLOR=16,16,16
+org.eclipse.ui.workbench.ACTIVE_TAB_BG_END=255,255,255
+org.eclipse.ui.workbench.ACTIVE_TAB_BG_START=255,255,255
+org.eclipse.ui.workbench.INACTIVE_TAB_BG_START=242,242,242
diff --git a/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.urischeme.prefs b/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.urischeme.prefs
new file mode 100644
index 0000000..855d634
--- /dev/null
+++ b/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.urischeme.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+processedSchemes=,eclipse+command,eclipse+mpc
diff --git a/eclipse/.metadata/.plugins/org.eclipse.debug.core/.launches/Client.launch b/eclipse/.metadata/.plugins/org.eclipse.debug.core/.launches/Client.launch
new file mode 100644
index 0000000..a639572
--- /dev/null
+++ b/eclipse/.metadata/.plugins/org.eclipse.debug.core/.launches/Client.launch
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/eclipse/.metadata/.plugins/org.eclipse.debug.core/.launches/Server.launch b/eclipse/.metadata/.plugins/org.eclipse.debug.core/.launches/Server.launch
new file mode 100644
index 0000000..395f317
--- /dev/null
+++ b/eclipse/.metadata/.plugins/org.eclipse.debug.core/.launches/Server.launch
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/eclipse/.metadata/.plugins/org.eclipse.debug.ui/dialog_settings.xml b/eclipse/.metadata/.plugins/org.eclipse.debug.ui/dialog_settings.xml
new file mode 100644
index 0000000..a0f4656
--- /dev/null
+++ b/eclipse/.metadata/.plugins/org.eclipse.debug.ui/dialog_settings.xml
@@ -0,0 +1,8 @@
+
+
diff --git a/eclipse/.metadata/.plugins/org.eclipse.debug.ui/launchConfigurationHistory.xml b/eclipse/.metadata/.plugins/org.eclipse.debug.ui/launchConfigurationHistory.xml
new file mode 100644
index 0000000..b304b88
--- /dev/null
+++ b/eclipse/.metadata/.plugins/org.eclipse.debug.ui/launchConfigurationHistory.xml
@@ -0,0 +1,31 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/eclipse/.metadata/.plugins/org.eclipse.e4.workbench/workbench.xmi b/eclipse/.metadata/.plugins/org.eclipse.e4.workbench/workbench.xmi
new file mode 100644
index 0000000..416df83
--- /dev/null
+++ b/eclipse/.metadata/.plugins/org.eclipse.e4.workbench/workbench.xmi
@@ -0,0 +1,2190 @@
+
+
+
+ activeSchemeId:org.eclipse.ui.defaultAcceleratorConfiguration
+
+
+
+
+
+
+
+ topLevel
+ shellMaximized
+
+
+
+
+ persp.actionSet:org.eclipse.ui.cheatsheets.actionSet
+ persp.actionSet:org.eclipse.search.searchActionSet
+ persp.actionSet:org.eclipse.text.quicksearch.actionSet
+ persp.actionSet:org.eclipse.ui.edit.text.actionSet.annotationNavigation
+ persp.actionSet:org.eclipse.ui.edit.text.actionSet.navigation
+ persp.actionSet:org.eclipse.ui.edit.text.actionSet.convertLineDelimitersTo
+ persp.actionSet:org.eclipse.ui.externaltools.ExternalToolsSet
+ persp.actionSet:org.eclipse.ui.actionSet.keyBindings
+ persp.actionSet:org.eclipse.ui.actionSet.openFiles
+ persp.actionSet:org.eclipse.debug.ui.launchActionSet
+ persp.actionSet:org.eclipse.jdt.ui.JavaActionSet
+ persp.actionSet:org.eclipse.jdt.ui.JavaElementCreationActionSet
+ persp.actionSet:org.eclipse.ui.NavigateActionSet
+ persp.viewSC:org.eclipse.jdt.ui.PackageExplorer
+ persp.viewSC:org.eclipse.jdt.ui.TypeHierarchy
+ persp.viewSC:org.eclipse.jdt.ui.SourceView
+ persp.viewSC:org.eclipse.jdt.ui.JavadocView
+ persp.viewSC:org.eclipse.search.ui.views.SearchView
+ persp.viewSC:org.eclipse.ui.console.ConsoleView
+ persp.viewSC:org.eclipse.ui.views.ContentOutline
+ persp.viewSC:org.eclipse.ui.views.ProblemView
+ persp.viewSC:org.eclipse.ui.views.ResourceNavigator
+ persp.viewSC:org.eclipse.ui.views.TaskList
+ persp.viewSC:org.eclipse.ui.views.ProgressView
+ persp.viewSC:org.eclipse.ui.navigator.ProjectExplorer
+ persp.viewSC:org.eclipse.ui.texteditor.TemplatesView
+ persp.viewSC:org.eclipse.pde.runtime.LogView
+ persp.newWizSC:org.eclipse.jdt.ui.wizards.JavaProjectWizard
+ persp.newWizSC:org.eclipse.jdt.ui.wizards.NewPackageCreationWizard
+ persp.newWizSC:org.eclipse.jdt.ui.wizards.NewClassCreationWizard
+ persp.newWizSC:org.eclipse.jdt.ui.wizards.NewInterfaceCreationWizard
+ persp.newWizSC:org.eclipse.jdt.ui.wizards.NewEnumCreationWizard
+ persp.newWizSC:org.eclipse.jdt.ui.wizards.NewRecordCreationWizard
+ persp.newWizSC:org.eclipse.jdt.ui.wizards.NewAnnotationCreationWizard
+ persp.newWizSC:org.eclipse.jdt.ui.wizards.NewSourceFolderCreationWizard
+ persp.newWizSC:org.eclipse.jdt.ui.wizards.NewSnippetFileCreationWizard
+ persp.newWizSC:org.eclipse.jdt.ui.wizards.NewJavaWorkingSetWizard
+ persp.newWizSC:org.eclipse.ui.wizards.new.folder
+ persp.newWizSC:org.eclipse.ui.wizards.new.file
+ persp.newWizSC:org.eclipse.ui.editors.wizards.UntitledTextFileWizard
+ persp.perspSC:org.eclipse.jdt.ui.JavaBrowsingPerspective
+ persp.perspSC:org.eclipse.debug.ui.DebugPerspective
+ persp.showIn:org.eclipse.jdt.ui.PackageExplorer
+ persp.showIn:org.eclipse.team.ui.GenericHistoryView
+ persp.showIn:org.eclipse.ui.navigator.ProjectExplorer
+ persp.actionSet:org.eclipse.debug.ui.breakpointActionSet
+ persp.actionSet:org.eclipse.jdt.debug.ui.JDTDebugActionSet
+ persp.showIn:org.eclipse.egit.ui.RepositoriesView
+ persp.actionSet:org.eclipse.eclemma.ui.CoverageActionSet
+ persp.showIn:org.eclipse.eclemma.ui.CoverageView
+ persp.viewSC:org.eclipse.tm.terminal.view.ui.TerminalsView
+ persp.showIn:org.eclipse.tm.terminal.view.ui.TerminalsView
+ persp.newWizSC:org.eclipse.jdt.junit.wizards.NewTestCaseCreationWizard
+ persp.actionSet:org.eclipse.jdt.junit.JUnitActionSet
+ persp.viewSC:org.eclipse.ant.ui.views.AntView
+ persp.actionSet:org.eclipse.debug.ui.debugActionSet
+
+
+
+ org.eclipse.e4.primaryNavigationStack
+
+ View
+ categoryTag:Java
+
+
+ View
+ categoryTag:Java
+
+
+ View
+ categoryTag:General
+
+
+ View
+ categoryTag:Java
+
+
+
+
+ View
+ categoryTag:Git
+
+
+
+
+
+
+
+ org.eclipse.e4.secondaryNavigationStack
+
+ View
+ categoryTag:General
+
+
+ View
+ categoryTag:General
+
+
+ View
+ categoryTag:General
+
+
+ View
+ categoryTag:Ant
+
+
+
+
+ org.eclipse.e4.secondaryDataStack
+ Debug
+
+ View
+ categoryTag:General
+
+
+ View
+ categoryTag:Java
+
+
+ View
+ categoryTag:Java
+
+
+ View
+ categoryTag:General
+
+
+ View
+ categoryTag:General
+
+
+ View
+ categoryTag:General
+
+
+ View
+ categoryTag:General
+
+
+ View
+ categoryTag:Terminal
+
+
+ View
+ categoryTag:Debug
+
+
+
+
+
+
+
+
+ View
+ categoryTag:Help
+
+
+ View
+ categoryTag:General
+
+
+ View
+ categoryTag:Help
+
+
+
+
+
+
+ View
+ categoryTag:Help
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:Help
+
+
+
+ org.eclipse.e4.primaryDataStack
+ EditorStack
+ active
+ noFocus
+
+
+ Editor
+ removeOnHide
+ org.eclipse.jdt.ui.CompilationUnitEditor
+
+
+
+ Editor
+ removeOnHide
+ org.eclipse.jdt.ui.CompilationUnitEditor
+
+
+
+ Editor
+ removeOnHide
+ org.eclipse.jdt.ui.CompilationUnitEditor
+
+
+
+ Editor
+ removeOnHide
+ org.eclipse.jdt.ui.CompilationUnitEditor
+
+
+
+ Editor
+ removeOnHide
+ org.eclipse.buildship.ui.gradlebuildscripteditor
+
+
+
+ Editor
+ removeOnHide
+ org.eclipse.jdt.ui.CompilationUnitEditor
+ active
+
+
+
+ Editor
+ removeOnHide
+ org.eclipse.jdt.ui.CompilationUnitEditor
+
+
+
+
+
+
+
+ View
+ categoryTag:Java
+
+ ViewMenu
+ menuContribution:menu
+
+
+
+
+
+
+ View
+ categoryTag:Java
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+
+ View
+ categoryTag:General
+
+ ViewMenu
+ menuContribution:menu
+
+
+
+
+
+
+ View
+ categoryTag:Java
+
+
+
+
+ View
+ categoryTag:Java
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+
+ View
+ categoryTag:General
+
+ ViewMenu
+ menuContribution:menu
+
+
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+
+ View
+ categoryTag:General
+
+ ViewMenu
+ menuContribution:menu
+
+
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:Git
+
+
+
+
+ View
+ categoryTag:Terminal
+
+
+
+
+ View
+ categoryTag:Java
+
+
+
+
+ View
+ categoryTag:Ant
+
+
+
+
+
+ View
+ categoryTag:Debug
+
+ ViewMenu
+ menuContribution:menu
+
+
+
+
+
+ toolbarSeparator
+
+
+
+ Draggable
+
+
+
+ toolbarSeparator
+
+
+
+ Draggable
+
+
+ toolbarSeparator
+
+
+
+ Draggable
+
+
+ Draggable
+
+
+ Draggable
+
+
+ Draggable
+
+
+ toolbarSeparator
+
+
+
+ Draggable
+
+
+
+ Draggable
+
+
+ toolbarSeparator
+
+
+
+ toolbarSeparator
+
+
+
+ Draggable
+
+
+ stretch
+ SHOW_RESTORE_MENU
+
+
+ Draggable
+ HIDEABLE
+ SHOW_RESTORE_MENU
+
+
+
+
+ stretch
+
+
+ Draggable
+
+
+ Draggable
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ platform:win32
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ platform:win32
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Editor
+ removeOnHide
+
+
+
+
+ View
+ categoryTag:Ant
+
+
+
+
+ View
+ categoryTag:Gradle
+
+
+
+
+ View
+ categoryTag:Gradle
+
+
+
+
+ View
+ categoryTag:Debug
+
+
+
+
+ View
+ categoryTag:Debug
+
+
+
+
+ View
+ categoryTag:Debug
+
+
+
+
+ View
+ categoryTag:Debug
+
+
+
+
+ View
+ categoryTag:Debug
+
+
+
+
+ View
+ categoryTag:Debug
+
+
+
+
+ View
+ categoryTag:Debug
+
+
+ View
+ categoryTag:Debug
+
+
+
+
+ View
+ categoryTag:Java
+
+
+
+
+ View
+ categoryTag:Git
+
+
+
+
+ View
+ categoryTag:Git
+
+
+
+
+ View
+ categoryTag:Git
+
+
+
+
+ View
+ categoryTag:Git
+ NoRestore
+
+
+
+
+ View
+ categoryTag:Git
+
+
+
+
+ View
+ categoryTag:Help
+
+
+
+
+ View
+ categoryTag:Debug
+
+
+
+
+ View
+ categoryTag:Java
+
+
+
+
+ View
+ categoryTag:Java
+
+
+
+
+ View
+ categoryTag:Java
+
+
+
+
+ View
+ categoryTag:Java Browsing
+
+
+
+
+ View
+ categoryTag:Java Browsing
+
+
+
+
+ View
+ categoryTag:Java Browsing
+
+
+
+
+ View
+ categoryTag:Java Browsing
+
+
+
+
+ View
+ categoryTag:Java
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:Java
+
+
+
+
+ View
+ categoryTag:Java
+
+
+
+
+ View
+ categoryTag:Maven
+
+
+
+
+ View
+ categoryTag:Maven
+
+
+
+
+ View
+ categoryTag:Oomph
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:Version Control (Team)
+
+
+
+
+ View
+ categoryTag:Version Control (Team)
+
+
+ View
+ categoryTag:Help
+
+
+
+
+ View
+ categoryTag:Terminal
+
+
+
+
+ View
+ categoryTag:Other
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:Help
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+ glue
+ move_after:PerspectiveSpacer
+ SHOW_RESTORE_MENU
+
+
+ move_after:Spacer Glue
+ HIDEABLE
+ SHOW_RESTORE_MENU
+
+
+ glue
+ move_after:SearchField
+ SHOW_RESTORE_MENU
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/eclipse/.metadata/.plugins/org.eclipse.egit.core/.org.eclipse.egit.core.cmp/.project b/eclipse/.metadata/.plugins/org.eclipse.egit.core/.org.eclipse.egit.core.cmp/.project
new file mode 100644
index 0000000..3c10856
--- /dev/null
+++ b/eclipse/.metadata/.plugins/org.eclipse.egit.core/.org.eclipse.egit.core.cmp/.project
@@ -0,0 +1,11 @@
+
+
+ .org.eclipse.egit.core.cmp
+
+
+
+
+
+
+
+
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/.org.eclipse.jdt.core.external.folders/.project b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/.org.eclipse.jdt.core.external.folders/.project
new file mode 100644
index 0000000..61399ae
--- /dev/null
+++ b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/.org.eclipse.jdt.core.external.folders/.project
@@ -0,0 +1,18 @@
+
+
+ .org.eclipse.jdt.core.external.folders
+
+
+
+
+
+
+
+
+
+ .link1
+ 2
+ C:/Users/Pulxes/.gradle/caches/minecraft/net/minecraftforge/forge/1.7.10-10.13.4.1614-1.7.10/start
+
+
+
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1012920029.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1012920029.index
new file mode 100644
index 0000000..41de49c
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1012920029.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1042707835.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1042707835.index
new file mode 100644
index 0000000..0af0ef7
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1042707835.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/105010654.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/105010654.index
new file mode 100644
index 0000000..b1ba3c4
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/105010654.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1054663212.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1054663212.index
new file mode 100644
index 0000000..6568f3e
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1054663212.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1122433992.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1122433992.index
new file mode 100644
index 0000000..41de49c
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1122433992.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1135025682.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1135025682.index
new file mode 100644
index 0000000..09d4cc9
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1135025682.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1152690393.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1152690393.index
new file mode 100644
index 0000000..f29fa8f
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1152690393.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1243394061.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1243394061.index
new file mode 100644
index 0000000..c1d0d59
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1243394061.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1246574746.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1246574746.index
new file mode 100644
index 0000000..fd2eb50
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1246574746.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1253735332.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1253735332.index
new file mode 100644
index 0000000..8039c9a
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1253735332.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1271531155.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1271531155.index
new file mode 100644
index 0000000..5357e6c
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1271531155.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1272036808.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1272036808.index
new file mode 100644
index 0000000..03a2321
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1272036808.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1309831821.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1309831821.index
new file mode 100644
index 0000000..a36ccd1
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1309831821.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1351039221.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1351039221.index
new file mode 100644
index 0000000..75b14b7
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1351039221.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/146154142.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/146154142.index
new file mode 100644
index 0000000..e525485
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/146154142.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1467279808.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1467279808.index
new file mode 100644
index 0000000..43f0d93
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1467279808.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1532178091.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1532178091.index
new file mode 100644
index 0000000..d18cd08
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1532178091.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1624407868.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1624407868.index
new file mode 100644
index 0000000..5b4acd4
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1624407868.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1644930635.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1644930635.index
new file mode 100644
index 0000000..32cb0b6
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1644930635.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/165659707.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/165659707.index
new file mode 100644
index 0000000..0e6f73c
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/165659707.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/169103220.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/169103220.index
new file mode 100644
index 0000000..03a2321
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/169103220.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1708583669.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1708583669.index
new file mode 100644
index 0000000..54f8d77
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1708583669.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/174989781.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/174989781.index
new file mode 100644
index 0000000..b312ad6
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/174989781.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1815974917.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1815974917.index
new file mode 100644
index 0000000..03a2321
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1815974917.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1827066925.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1827066925.index
new file mode 100644
index 0000000..6c8d44a
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1827066925.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1865797976.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1865797976.index
new file mode 100644
index 0000000..6d34dbd
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1865797976.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1866713958.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1866713958.index
new file mode 100644
index 0000000..f03dfb7
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1866713958.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1897778185.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1897778185.index
new file mode 100644
index 0000000..9ad060d
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1897778185.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1911091046.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1911091046.index
new file mode 100644
index 0000000..c0cbf20
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/1911091046.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/203767378.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/203767378.index
new file mode 100644
index 0000000..755c95a
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/203767378.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/2070905719.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/2070905719.index
new file mode 100644
index 0000000..f9d6cd6
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/2070905719.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/2185752857.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/2185752857.index
new file mode 100644
index 0000000..4a0e125
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/2185752857.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/2196862166.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/2196862166.index
new file mode 100644
index 0000000..10da595
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/2196862166.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/2216197781.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/2216197781.index
new file mode 100644
index 0000000..6cfa0fb
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/2216197781.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/2227366981.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/2227366981.index
new file mode 100644
index 0000000..50fead1
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/2227366981.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/2328269416.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/2328269416.index
new file mode 100644
index 0000000..abcb4d6
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/2328269416.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/2360566965.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/2360566965.index
new file mode 100644
index 0000000..a97e2fc
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/2360566965.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/242561514.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/242561514.index
new file mode 100644
index 0000000..d598003
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/242561514.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/2472833265.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/2472833265.index
new file mode 100644
index 0000000..e9521b7
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/2472833265.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/2504789469.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/2504789469.index
new file mode 100644
index 0000000..f551ad2
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/2504789469.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/2532801332.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/2532801332.index
new file mode 100644
index 0000000..0ddc0b7
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/2532801332.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/2554155944.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/2554155944.index
new file mode 100644
index 0000000..f0c4173
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/2554155944.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/2677407590.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/2677407590.index
new file mode 100644
index 0000000..86e00a0
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/2677407590.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/2757220974.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/2757220974.index
new file mode 100644
index 0000000..5f0f88b
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/2757220974.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/2788000850.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/2788000850.index
new file mode 100644
index 0000000..38ae0f2
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/2788000850.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/2860418500.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/2860418500.index
new file mode 100644
index 0000000..0e6f73c
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/2860418500.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/286606776.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/286606776.index
new file mode 100644
index 0000000..9d00ce0
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/286606776.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/289975946.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/289975946.index
new file mode 100644
index 0000000..fe30a60
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/289975946.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/2919876106.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/2919876106.index
new file mode 100644
index 0000000..0f3362a
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/2919876106.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/292137680.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/292137680.index
new file mode 100644
index 0000000..1b5cb02
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/292137680.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/2983812515.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/2983812515.index
new file mode 100644
index 0000000..a312e2f
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/2983812515.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/298400692.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/298400692.index
new file mode 100644
index 0000000..50fead1
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/298400692.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/3151676064.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/3151676064.index
new file mode 100644
index 0000000..7e1228c
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/3151676064.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/3202567282.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/3202567282.index
new file mode 100644
index 0000000..4b14090
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/3202567282.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/3366137611.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/3366137611.index
new file mode 100644
index 0000000..13946a4
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/3366137611.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/3411516954.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/3411516954.index
new file mode 100644
index 0000000..e88e1ff
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/3411516954.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/3414414312.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/3414414312.index
new file mode 100644
index 0000000..402886d
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/3414414312.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/3481651721.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/3481651721.index
new file mode 100644
index 0000000..dd135e4
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/3481651721.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/3653030889.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/3653030889.index
new file mode 100644
index 0000000..8cc6f67
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/3653030889.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/3790132439.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/3790132439.index
new file mode 100644
index 0000000..fef303b
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/3790132439.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/3801776618.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/3801776618.index
new file mode 100644
index 0000000..7f91495
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/3801776618.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/3864294799.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/3864294799.index
new file mode 100644
index 0000000..20fe7d7
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/3864294799.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/3869670652.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/3869670652.index
new file mode 100644
index 0000000..7c5bd43
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/3869670652.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/3869821576.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/3869821576.index
new file mode 100644
index 0000000..15fb3da
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/3869821576.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/3894842527.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/3894842527.index
new file mode 100644
index 0000000..add1b5d
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/3894842527.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/39286232.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/39286232.index
new file mode 100644
index 0000000..be3e196
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/39286232.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/3962322580.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/3962322580.index
new file mode 100644
index 0000000..f48690e
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/3962322580.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/4056298361.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/4056298361.index
new file mode 100644
index 0000000..60853fa
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/4056298361.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/4066382717.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/4066382717.index
new file mode 100644
index 0000000..db8453c
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/4066382717.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/4088548233.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/4088548233.index
new file mode 100644
index 0000000..0e6f73c
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/4088548233.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/4137240660.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/4137240660.index
new file mode 100644
index 0000000..dbe17ec
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/4137240660.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/4190532526.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/4190532526.index
new file mode 100644
index 0000000..17de663
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/4190532526.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/4192451459.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/4192451459.index
new file mode 100644
index 0000000..934ba1f
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/4192451459.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/4276957018.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/4276957018.index
new file mode 100644
index 0000000..e29109d
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/4276957018.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/474247837.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/474247837.index
new file mode 100644
index 0000000..d495908
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/474247837.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/479783716.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/479783716.index
new file mode 100644
index 0000000..3b8449f
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/479783716.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/552470683.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/552470683.index
new file mode 100644
index 0000000..9ad060d
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/552470683.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/61333915.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/61333915.index
new file mode 100644
index 0000000..2ffa0d0
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/61333915.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/651360643.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/651360643.index
new file mode 100644
index 0000000..2f3b5b8
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/651360643.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/662138292.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/662138292.index
new file mode 100644
index 0000000..c0cbf20
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/662138292.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/695795736.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/695795736.index
new file mode 100644
index 0000000..4ce7fd6
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/695795736.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/782169307.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/782169307.index
new file mode 100644
index 0000000..c7b26e4
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/782169307.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/876485342.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/876485342.index
new file mode 100644
index 0000000..0ff9fca
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/876485342.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/895591420.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/895591420.index
new file mode 100644
index 0000000..49916bf
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/895591420.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/933273961.index b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/933273961.index
new file mode 100644
index 0000000..50fead1
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/933273961.index differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/assumedExternalFilesCache b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/assumedExternalFilesCache
new file mode 100644
index 0000000..593f470
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/assumedExternalFilesCache differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/externalFilesCache b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/externalFilesCache
new file mode 100644
index 0000000..5ae6b37
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/externalFilesCache differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/externalLibsTimeStamps b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/externalLibsTimeStamps
new file mode 100644
index 0000000..27f3f31
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/externalLibsTimeStamps differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/indexNamesMap.txt b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/indexNamesMap.txt
new file mode 100644
index 0000000..cfc6fb9
--- /dev/null
+++ b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/indexNamesMap.txt
@@ -0,0 +1 @@
+INDEX VERSION 1.131
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/javaLikeNames.txt b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/javaLikeNames.txt
new file mode 100644
index 0000000..8586397
--- /dev/null
+++ b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/javaLikeNames.txt
@@ -0,0 +1 @@
+java
\ No newline at end of file
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/nonChainingJarsCache b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/nonChainingJarsCache
new file mode 100644
index 0000000..1ff4a4f
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/nonChainingJarsCache differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/savedIndexNames.txt b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/savedIndexNames.txt
new file mode 100644
index 0000000..9b8083a
--- /dev/null
+++ b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/savedIndexNames.txt
@@ -0,0 +1,86 @@
+INDEX VERSION 1.131+C:\Users\Pulxes\Desktop\Developing mods for Cubes\Advanced Botany Beta-1\eclipse\.metadata\.plugins\org.eclipse.jdt.core
+2185752857.index
+1042707835.index
+695795736.index
+1532178091.index
+1467279808.index
+4192451459.index
+4056298361.index
+876485342.index
+3202567282.index
+2983812515.index
+3962322580.index
+1309831821.index
+105010654.index
+1708583669.index
+165659707.index
+2532801332.index
+2216197781.index
+4137240660.index
+1271531155.index
+2757220974.index
+1253735332.index
+2227366981.index
+474247837.index
+3481651721.index
+2919876106.index
+2788000850.index
+3790132439.index
+782169307.index
+4088548233.index
+3366137611.index
+933273961.index
+479783716.index
+3653030889.index
+3151676064.index
+4190532526.index
+1012920029.index
+39286232.index
+1827066925.index
+1152690393.index
+651360643.index
+3869670652.index
+1272036808.index
+1135025682.index
+2677407590.index
+61333915.index
+662138292.index
+4276957018.index
+1911091046.index
+1624407868.index
+1246574746.index
+552470683.index
+2860418500.index
+2554155944.index
+1351039221.index
+292137680.index
+2504789469.index
+1122433992.index
+1865797976.index
+2472833265.index
+169103220.index
+2070905719.index
+298400692.index
+1897778185.index
+3864294799.index
+3894842527.index
+146154142.index
+1054663212.index
+3869821576.index
+3411516954.index
+2360566965.index
+4066382717.index
+289975946.index
+1644930635.index
+1815974917.index
+242561514.index
+1243394061.index
+174989781.index
+895591420.index
+1866713958.index
+3414414312.index
+3801776618.index
+2328269416.index
+203767378.index
+2196862166.index
+286606776.index
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.core/variablesAndContainers.dat b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/variablesAndContainers.dat
new file mode 100644
index 0000000..cf455d3
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.core/variablesAndContainers.dat differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.debug.ui/dialog_settings.xml b/eclipse/.metadata/.plugins/org.eclipse.jdt.debug.ui/dialog_settings.xml
new file mode 100644
index 0000000..76969bf
--- /dev/null
+++ b/eclipse/.metadata/.plugins/org.eclipse.jdt.debug.ui/dialog_settings.xml
@@ -0,0 +1,7 @@
+
+
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.launching/.install.xml b/eclipse/.metadata/.plugins/org.eclipse.jdt.launching/.install.xml
new file mode 100644
index 0000000..3402d4f
--- /dev/null
+++ b/eclipse/.metadata/.plugins/org.eclipse.jdt.launching/.install.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.launching/libraryInfos.xml b/eclipse/.metadata/.plugins/org.eclipse.jdt.launching/libraryInfos.xml
new file mode 100644
index 0000000..e0e4f37
--- /dev/null
+++ b/eclipse/.metadata/.plugins/org.eclipse.jdt.launching/libraryInfos.xml
@@ -0,0 +1,24 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.ui/OpenTypeHistory.xml b/eclipse/.metadata/.plugins/org.eclipse.jdt.ui/OpenTypeHistory.xml
new file mode 100644
index 0000000..a4ee3cb
--- /dev/null
+++ b/eclipse/.metadata/.plugins/org.eclipse.jdt.ui/OpenTypeHistory.xml
@@ -0,0 +1,2 @@
+
+
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.ui/QualifiedTypeNameHistory.xml b/eclipse/.metadata/.plugins/org.eclipse.jdt.ui/QualifiedTypeNameHistory.xml
new file mode 100644
index 0000000..9e390f5
--- /dev/null
+++ b/eclipse/.metadata/.plugins/org.eclipse.jdt.ui/QualifiedTypeNameHistory.xml
@@ -0,0 +1,2 @@
+
+
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.ui/dialog_settings.xml b/eclipse/.metadata/.plugins/org.eclipse.jdt.ui/dialog_settings.xml
new file mode 100644
index 0000000..b4f80fb
--- /dev/null
+++ b/eclipse/.metadata/.plugins/org.eclipse.jdt.ui/dialog_settings.xml
@@ -0,0 +1,19 @@
+
+
diff --git a/eclipse/.metadata/.plugins/org.eclipse.jdt.ui/jdt-images/0.png b/eclipse/.metadata/.plugins/org.eclipse.jdt.ui/jdt-images/0.png
new file mode 100644
index 0000000..5a8a6f0
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.jdt.ui/jdt-images/0.png differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.m2e.core/workspaceState.ser b/eclipse/.metadata/.plugins/org.eclipse.m2e.core/workspaceState.ser
new file mode 100644
index 0000000..e1d1a02
Binary files /dev/null and b/eclipse/.metadata/.plugins/org.eclipse.m2e.core/workspaceState.ser differ
diff --git a/eclipse/.metadata/.plugins/org.eclipse.m2e.logback.configuration/0.log b/eclipse/.metadata/.plugins/org.eclipse.m2e.logback.configuration/0.log
new file mode 100644
index 0000000..fc9f50d
--- /dev/null
+++ b/eclipse/.metadata/.plugins/org.eclipse.m2e.logback.configuration/0.log
@@ -0,0 +1,6 @@
+2022-02-03 09:36:14,160 [Worker-5: Loading available Gradle versions] INFO o.e.b.c.i.u.g.PublishedGradleVersions - Gradle version information cache is up-to-date. Trying to read.
+2022-02-03 09:50:19,758 [Worker-2: Loading available Gradle versions] INFO o.e.b.c.i.u.g.PublishedGradleVersions - Gradle version information cache is up-to-date. Trying to read.
+2022-02-03 09:55:46,292 [Worker-4: Loading available Gradle versions] INFO o.e.b.c.i.u.g.PublishedGradleVersions - Gradle version information cache is up-to-date. Trying to read.
+2022-02-03 09:57:56,608 [Worker-2: Loading available Gradle versions] INFO o.e.b.c.i.u.g.PublishedGradleVersions - Gradle version information cache is up-to-date. Trying to read.
+2022-02-03 10:10:07,708 [Worker-2: Loading available Gradle versions] INFO o.e.b.c.i.u.g.PublishedGradleVersions - Gradle version information cache is up-to-date. Trying to read.
+2022-02-03 11:34:53,363 [Worker-4: Loading available Gradle versions] INFO o.e.b.c.i.u.g.PublishedGradleVersions - Gradle version information cache is up-to-date. Trying to read.
diff --git a/eclipse/.metadata/.plugins/org.eclipse.m2e.logback.configuration/logback.1.16.3.20211002-1029.xml b/eclipse/.metadata/.plugins/org.eclipse.m2e.logback.configuration/logback.1.16.3.20211002-1029.xml
new file mode 100644
index 0000000..4512556
--- /dev/null
+++ b/eclipse/.metadata/.plugins/org.eclipse.m2e.logback.configuration/logback.1.16.3.20211002-1029.xml
@@ -0,0 +1,41 @@
+
+
+
+ %date [%thread] %-5level %logger{35} - %msg%n
+
+
+ OFF
+
+
+
+
+ ${org.eclipse.m2e.log.dir}/0.log
+
+ ${org.eclipse.m2e.log.dir}/%i.log
+ 1
+ 10
+
+
+ 100MB
+
+
+ %date [%thread] %-5level %logger{35} - %msg%n
+
+
+
+
+
+ WARN
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/eclipse/.metadata/.plugins/org.eclipse.oomph.setup/workspace.setup b/eclipse/.metadata/.plugins/org.eclipse.oomph.setup/workspace.setup
new file mode 100644
index 0000000..1f73e14
--- /dev/null
+++ b/eclipse/.metadata/.plugins/org.eclipse.oomph.setup/workspace.setup
@@ -0,0 +1,6 @@
+
+
diff --git a/eclipse/.metadata/.plugins/org.eclipse.tips.ide/dialog_settings.xml b/eclipse/.metadata/.plugins/org.eclipse.tips.ide/dialog_settings.xml
new file mode 100644
index 0000000..5ca0b77
--- /dev/null
+++ b/eclipse/.metadata/.plugins/org.eclipse.tips.ide/dialog_settings.xml
@@ -0,0 +1,3 @@
+
+
diff --git a/eclipse/.metadata/.plugins/org.eclipse.ui.editors/dialog_settings.xml b/eclipse/.metadata/.plugins/org.eclipse.ui.editors/dialog_settings.xml
new file mode 100644
index 0000000..50f1edb
--- /dev/null
+++ b/eclipse/.metadata/.plugins/org.eclipse.ui.editors/dialog_settings.xml
@@ -0,0 +1,5 @@
+
+
diff --git a/eclipse/.metadata/.plugins/org.eclipse.ui.workbench/workingsets.xml b/eclipse/.metadata/.plugins/org.eclipse.ui.workbench/workingsets.xml
new file mode 100644
index 0000000..2574822
--- /dev/null
+++ b/eclipse/.metadata/.plugins/org.eclipse.ui.workbench/workingsets.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/eclipse/.metadata/version.ini b/eclipse/.metadata/version.ini
new file mode 100644
index 0000000..fec72f8
--- /dev/null
+++ b/eclipse/.metadata/version.ini
@@ -0,0 +1,3 @@
+#Thu Feb 03 11:34:48 MSK 2022
+org.eclipse.core.runtime=2
+org.eclipse.platform=4.22.0.v20211124-1800
diff --git a/eclipse/BotaniaVars.dat b/eclipse/BotaniaVars.dat
new file mode 100644
index 0000000..2fae9d2
Binary files /dev/null and b/eclipse/BotaniaVars.dat differ
diff --git a/eclipse/asm/ccl_modular/codechicken#nei#guihook#DefaultSlotClickHandler.txt b/eclipse/asm/ccl_modular/codechicken#nei#guihook#DefaultSlotClickHandler.txt
new file mode 100644
index 0000000..28da57c
--- /dev/null
+++ b/eclipse/asm/ccl_modular/codechicken#nei#guihook#DefaultSlotClickHandler.txt
@@ -0,0 +1,90 @@
+// class version 50.0 (50)
+// access flags 0x21
+public class codechicken/nei/guihook/DefaultSlotClickHandler implements codechicken/nei/guihook/IContainerSlotClickHandler {
+
+ // compiled from: DefaultSlotClickHandler.java
+
+ // access flags 0x1
+ public ()V
+ L0
+ LINENUMBER 6 L0
+ ALOAD 0
+ INVOKESPECIAL java/lang/Object. ()V
+ RETURN
+ L1
+ LOCALVARIABLE this Lcodechicken/nei/guihook/DefaultSlotClickHandler; L0 L1 0
+ MAXSTACK = 1
+ MAXLOCALS = 1
+
+ // access flags 0x1
+ public beforeSlotClick(Lnet/minecraft/client/gui/inventory/GuiContainer;IILnet/minecraft/inventory/Slot;I)V
+ L0
+ LINENUMBER 11 L0
+ RETURN
+ L1
+ LOCALVARIABLE this Lcodechicken/nei/guihook/DefaultSlotClickHandler; L0 L1 0
+ LOCALVARIABLE gui Lnet/minecraft/client/gui/inventory/GuiContainer; L0 L1 1
+ LOCALVARIABLE slotIndex I L0 L1 2
+ LOCALVARIABLE button I L0 L1 3
+ LOCALVARIABLE slot Lnet/minecraft/inventory/Slot; L0 L1 4
+ LOCALVARIABLE modifier I L0 L1 5
+ MAXSTACK = 0
+ MAXLOCALS = 6
+
+ // access flags 0x1
+ public handleSlotClick(Lnet/minecraft/client/gui/inventory/GuiContainer;IILnet/minecraft/inventory/Slot;IZ)Z
+ L0
+ LINENUMBER 16 L0
+ ILOAD 6
+ IFNE L1
+ L2
+ LINENUMBER 17 L2
+ ALOAD 1
+ ALOAD 4
+ ILOAD 2
+ ILOAD 3
+ ILOAD 5
+ INVOKESTATIC codechicken/nei/guihook/DefaultSlotClickHandler.callHandleMouseClick (Lnet/minecraft/client/gui/inventory/GuiContainer;Lnet/minecraft/inventory/Slot;III)V
+ L1
+ LINENUMBER 19 L1
+ FRAME FULL [codechicken/nei/guihook/DefaultSlotClickHandler net/minecraft/client/gui/inventory/GuiContainer I I net/minecraft/inventory/Slot I I] []
+ ICONST_1
+ IRETURN
+ L3
+ LOCALVARIABLE this Lcodechicken/nei/guihook/DefaultSlotClickHandler; L0 L3 0
+ LOCALVARIABLE gui Lnet/minecraft/client/gui/inventory/GuiContainer; L0 L3 1
+ LOCALVARIABLE slotIndex I L0 L3 2
+ LOCALVARIABLE button I L0 L3 3
+ LOCALVARIABLE slot Lnet/minecraft/inventory/Slot; L0 L3 4
+ LOCALVARIABLE modifier I L0 L3 5
+ LOCALVARIABLE eventconsumed Z L0 L3 6
+ MAXSTACK = 5
+ MAXLOCALS = 7
+
+ // access flags 0x9
+ public static callHandleMouseClick(Lnet/minecraft/client/gui/inventory/GuiContainer;Lnet/minecraft/inventory/Slot;III)V
+ ALOAD 0
+ ALOAD 1
+ ILOAD 2
+ ILOAD 3
+ ILOAD 4
+ INVOKEVIRTUAL net/minecraft/client/gui/inventory/GuiContainer.public_func_146984_a (Lnet/minecraft/inventory/Slot;III)V
+ RETURN
+ MAXSTACK = 5
+ MAXLOCALS = 5
+
+ // access flags 0x1
+ public afterSlotClick(Lnet/minecraft/client/gui/inventory/GuiContainer;IILnet/minecraft/inventory/Slot;I)V
+ L0
+ LINENUMBER 29 L0
+ RETURN
+ L1
+ LOCALVARIABLE this Lcodechicken/nei/guihook/DefaultSlotClickHandler; L0 L1 0
+ LOCALVARIABLE gui Lnet/minecraft/client/gui/inventory/GuiContainer; L0 L1 1
+ LOCALVARIABLE slotIndex I L0 L1 2
+ LOCALVARIABLE button I L0 L1 3
+ LOCALVARIABLE slot Lnet/minecraft/inventory/Slot; L0 L1 4
+ LOCALVARIABLE modifier I L0 L1 5
+ MAXSTACK = 0
+ MAXLOCALS = 6
+}
diff --git a/eclipse/asm/ccl_modular/codechicken#nei#guihook#GuiContainerManager.txt b/eclipse/asm/ccl_modular/codechicken#nei#guihook#GuiContainerManager.txt
new file mode 100644
index 0000000..3db977b
--- /dev/null
+++ b/eclipse/asm/ccl_modular/codechicken#nei#guihook#GuiContainerManager.txt
@@ -0,0 +1,2377 @@
+// class version 50.0 (50)
+// access flags 0x21
+public class codechicken/nei/guihook/GuiContainerManager {
+
+ // compiled from: GuiContainerManager.java
+
+ // access flags 0x1
+ public Lnet/minecraft/client/gui/inventory/GuiContainer; window
+
+ // access flags 0x9
+ public static Lnet/minecraft/client/renderer/entity/RenderItem; drawItems
+
+ // access flags 0x19
+ // signature Ljava/util/LinkedList;
+ // declaration: java.util.LinkedList
+ public final static Ljava/util/LinkedList; tooltipHandlers
+
+ // access flags 0x19
+ // signature Ljava/util/LinkedList;
+ // declaration: java.util.LinkedList
+ public final static Ljava/util/LinkedList; inputHandlers
+
+ // access flags 0x19
+ // signature Ljava/util/LinkedList;
+ // declaration: java.util.LinkedList
+ public final static Ljava/util/LinkedList; drawHandlers
+
+ // access flags 0x19
+ // signature Ljava/util/LinkedList;
+ // declaration: java.util.LinkedList
+ public final static Ljava/util/LinkedList; objectHandlers
+
+ // access flags 0x19
+ // signature Ljava/util/LinkedList;
+ // declaration: java.util.LinkedList
+ public final static Ljava/util/LinkedList; slotClickHandlers
+
+ // access flags 0xA
+ private static I modelviewDepth
+
+ // access flags 0xA
+ // signature Ljava/util/HashSet;
+ // declaration: java.util.HashSet
+ private static Ljava/util/HashSet; stackTraces
+
+ // access flags 0x2
+ private I clickHandled
+
+ // access flags 0x2
+ // signature Ljava/util/List;
+ // declaration: java.util.List
+ private Ljava/util/List; instanceTooltipHandlers
+
+ // access flags 0x9
+ public static getManager()Lcodechicken/nei/guihook/GuiContainerManager;
+ L0
+ LINENUMBER 45 L0
+ INVOKESTATIC net/minecraft/client/Minecraft.getMinecraft ()Lnet/minecraft/client/Minecraft;
+ GETFIELD net/minecraft/client/Minecraft.currentScreen : Lnet/minecraft/client/gui/GuiScreen;
+ ASTORE 0
+ L1
+ LINENUMBER 46 L1
+ ALOAD 0
+ INSTANCEOF net/minecraft/client/gui/inventory/GuiContainer
+ IFEQ L2
+ ALOAD 0
+ CHECKCAST net/minecraft/client/gui/inventory/GuiContainer
+ INVOKESTATIC codechicken/nei/guihook/GuiContainerManager.getManager (Lnet/minecraft/client/gui/inventory/GuiContainer;)Lcodechicken/nei/guihook/GuiContainerManager;
+ GOTO L3
+ L2
+ FRAME FULL [net/minecraft/client/gui/GuiScreen] []
+ ACONST_NULL
+ L3
+ FRAME FULL [net/minecraft/client/gui/GuiScreen] [codechicken/nei/guihook/GuiContainerManager]
+ ARETURN
+ L4
+ LOCALVARIABLE gui Lnet/minecraft/client/gui/GuiScreen; L1 L4 0
+ MAXSTACK = 1
+ MAXLOCALS = 1
+
+ // access flags 0x9
+ public static getManager(Lnet/minecraft/client/gui/inventory/GuiContainer;)Lcodechicken/nei/guihook/GuiContainerManager;
+ ALOAD 0
+ GETFIELD net/minecraft/client/gui/inventory/GuiContainer.manager : Lcodechicken/nei/guihook/GuiContainerManager;
+ ARETURN
+ MAXSTACK = 1
+ MAXLOCALS = 1
+
+ // access flags 0x9
+ public static addTooltipHandler(Lcodechicken/nei/guihook/IContainerTooltipHandler;)V
+ L0
+ LINENUMBER 60 L0
+ GETSTATIC codechicken/nei/guihook/GuiContainerManager.tooltipHandlers : Ljava/util/LinkedList;
+ ALOAD 0
+ INVOKEVIRTUAL java/util/LinkedList.add (Ljava/lang/Object;)Z
+ POP
+ L1
+ LINENUMBER 61 L1
+ RETURN
+ L2
+ LOCALVARIABLE handler Lcodechicken/nei/guihook/IContainerTooltipHandler; L0 L2 0
+ MAXSTACK = 2
+ MAXLOCALS = 1
+
+ // access flags 0x9
+ public static addInputHandler(Lcodechicken/nei/guihook/IContainerInputHandler;)V
+ L0
+ LINENUMBER 69 L0
+ GETSTATIC codechicken/nei/guihook/GuiContainerManager.inputHandlers : Ljava/util/LinkedList;
+ ALOAD 0
+ INVOKEVIRTUAL java/util/LinkedList.add (Ljava/lang/Object;)Z
+ POP
+ L1
+ LINENUMBER 70 L1
+ RETURN
+ L2
+ LOCALVARIABLE handler Lcodechicken/nei/guihook/IContainerInputHandler; L0 L2 0
+ MAXSTACK = 2
+ MAXLOCALS = 1
+
+ // access flags 0x9
+ public static addDrawHandler(Lcodechicken/nei/guihook/IContainerDrawHandler;)V
+ L0
+ LINENUMBER 78 L0
+ GETSTATIC codechicken/nei/guihook/GuiContainerManager.drawHandlers : Ljava/util/LinkedList;
+ ALOAD 0
+ INVOKEVIRTUAL java/util/LinkedList.add (Ljava/lang/Object;)Z
+ POP
+ L1
+ LINENUMBER 79 L1
+ RETURN
+ L2
+ LOCALVARIABLE handler Lcodechicken/nei/guihook/IContainerDrawHandler; L0 L2 0
+ MAXSTACK = 2
+ MAXLOCALS = 1
+
+ // access flags 0x9
+ public static addObjectHandler(Lcodechicken/nei/guihook/IContainerObjectHandler;)V
+ L0
+ LINENUMBER 87 L0
+ GETSTATIC codechicken/nei/guihook/GuiContainerManager.objectHandlers : Ljava/util/LinkedList;
+ ALOAD 0
+ INVOKEVIRTUAL java/util/LinkedList.add (Ljava/lang/Object;)Z
+ POP
+ L1
+ LINENUMBER 88 L1
+ RETURN
+ L2
+ LOCALVARIABLE handler Lcodechicken/nei/guihook/IContainerObjectHandler; L0 L2 0
+ MAXSTACK = 2
+ MAXLOCALS = 1
+
+ // access flags 0x9
+ public static addSlotClickHandler(Lcodechicken/nei/guihook/IContainerSlotClickHandler;)V
+ L0
+ LINENUMBER 96 L0
+ GETSTATIC codechicken/nei/guihook/GuiContainerManager.slotClickHandlers : Ljava/util/LinkedList;
+ ALOAD 0
+ INVOKEVIRTUAL java/util/LinkedList.addFirst (Ljava/lang/Object;)V
+ L1
+ LINENUMBER 97 L1
+ RETURN
+ L2
+ LOCALVARIABLE handler Lcodechicken/nei/guihook/IContainerSlotClickHandler; L0 L2 0
+ MAXSTACK = 2
+ MAXLOCALS = 1
+
+ // access flags 0x9
+ public static getFontRenderer(Lnet/minecraft/item/ItemStack;)Lnet/minecraft/client/gui/FontRenderer;
+ L0
+ LINENUMBER 100 L0
+ ALOAD 0
+ IFNULL L1
+ ALOAD 0
+ INVOKEVIRTUAL net/minecraft/item/ItemStack.getItem ()Lnet/minecraft/item/Item;
+ IFNULL L1
+ L2
+ LINENUMBER 101 L2
+ ALOAD 0
+ INVOKEVIRTUAL net/minecraft/item/ItemStack.getItem ()Lnet/minecraft/item/Item;
+ ALOAD 0
+ INVOKEVIRTUAL net/minecraft/item/Item.getFontRenderer (Lnet/minecraft/item/ItemStack;)Lnet/minecraft/client/gui/FontRenderer;
+ ASTORE 1
+ L3
+ LINENUMBER 102 L3
+ ALOAD 1
+ IFNULL L1
+ L4
+ LINENUMBER 103 L4
+ ALOAD 1
+ ARETURN
+ L1
+ LINENUMBER 105 L1
+ FRAME FULL [net/minecraft/item/ItemStack] []
+ GETSTATIC codechicken/lib/gui/GuiDraw.fontRenderer : Lnet/minecraft/client/gui/FontRenderer;
+ ARETURN
+ L5
+ LOCALVARIABLE f Lnet/minecraft/client/gui/FontRenderer; L3 L1 1
+ LOCALVARIABLE stack Lnet/minecraft/item/ItemStack; L0 L5 0
+ MAXSTACK = 2
+ MAXLOCALS = 2
+
+ // access flags 0x9
+ // signature (Lnet/minecraft/item/ItemStack;Lnet/minecraft/client/gui/inventory/GuiContainer;Z)Ljava/util/List;
+ // declaration: java.util.List itemDisplayNameMultiline(net.minecraft.item.ItemStack, net.minecraft.client.gui.inventory.GuiContainer, boolean)
+ public static itemDisplayNameMultiline(Lnet/minecraft/item/ItemStack;Lnet/minecraft/client/gui/inventory/GuiContainer;Z)Ljava/util/List;
+ TRYCATCHBLOCK L0 L1 L2 java/lang/Throwable
+ L3
+ LINENUMBER 117 L3
+ ACONST_NULL
+ ASTORE 3
+ L0
+ LINENUMBER 119 L0
+ ALOAD 0
+ INVOKESTATIC net/minecraft/client/Minecraft.getMinecraft ()Lnet/minecraft/client/Minecraft;
+ GETFIELD net/minecraft/client/Minecraft.thePlayer : Lnet/minecraft/client/entity/EntityClientPlayerMP;
+ ILOAD 2
+ IFEQ L4
+ INVOKESTATIC net/minecraft/client/Minecraft.getMinecraft ()Lnet/minecraft/client/Minecraft;
+ GETFIELD net/minecraft/client/Minecraft.gameSettings : Lnet/minecraft/client/settings/GameSettings;
+ GETFIELD net/minecraft/client/settings/GameSettings.advancedItemTooltips : Z
+ IFEQ L4
+ ICONST_1
+ GOTO L5
+ L4
+ FRAME FULL [net/minecraft/item/ItemStack net/minecraft/client/gui/inventory/GuiContainer I N] [net/minecraft/item/ItemStack net/minecraft/client/entity/EntityClientPlayerMP]
+ ICONST_0
+ L5
+ FRAME FULL [net/minecraft/item/ItemStack net/minecraft/client/gui/inventory/GuiContainer I N] [net/minecraft/item/ItemStack net/minecraft/client/entity/EntityClientPlayerMP I]
+ INVOKEVIRTUAL net/minecraft/item/ItemStack.getTooltip (Lnet/minecraft/entity/player/EntityPlayer;Z)Ljava/util/List;
+ ASTORE 3
+ L1
+ LINENUMBER 120 L1
+ GOTO L6
+ L2
+ FRAME FULL [net/minecraft/item/ItemStack net/minecraft/client/gui/inventory/GuiContainer I java/util/List] [java/lang/Throwable]
+ ASTORE 4
+ L6
+ LINENUMBER 122 L6
+ FRAME FULL [net/minecraft/item/ItemStack net/minecraft/client/gui/inventory/GuiContainer I java/util/List] []
+ ALOAD 3
+ IFNONNULL L7
+ L8
+ LINENUMBER 123 L8
+ NEW java/util/ArrayList
+ DUP
+ INVOKESPECIAL java/util/ArrayList. ()V
+ ASTORE 3
+ L7
+ LINENUMBER 125 L7
+ FRAME FULL [net/minecraft/item/ItemStack net/minecraft/client/gui/inventory/GuiContainer I java/util/List] []
+ ALOAD 3
+ INVOKEINTERFACE java/util/List.size ()I
+ IFNE L9
+ L10
+ LINENUMBER 126 L10
+ ALOAD 3
+ LDC "Unnamed"
+ INVOKEINTERFACE java/util/List.add (Ljava/lang/Object;)Z
+ POP
+ L9
+ LINENUMBER 128 L9
+ FRAME FULL [net/minecraft/item/ItemStack net/minecraft/client/gui/inventory/GuiContainer I java/util/List] []
+ ALOAD 3
+ ICONST_0
+ INVOKEINTERFACE java/util/List.get (I)Ljava/lang/Object;
+ IFNULL L11
+ ALOAD 3
+ ICONST_0
+ INVOKEINTERFACE java/util/List.get (I)Ljava/lang/Object;
+ CHECKCAST java/lang/String
+ LDC ""
+ INVOKEVIRTUAL java/lang/String.equals (Ljava/lang/Object;)Z
+ IFEQ L12
+ L11
+ LINENUMBER 129 L11
+ FRAME FULL [net/minecraft/item/ItemStack net/minecraft/client/gui/inventory/GuiContainer I java/util/List] []
+ ALOAD 3
+ ICONST_0
+ LDC "Unnamed"
+ INVOKEINTERFACE java/util/List.set (ILjava/lang/Object;)Ljava/lang/Object;
+ POP
+ L12
+ LINENUMBER 131 L12
+ FRAME FULL [net/minecraft/item/ItemStack net/minecraft/client/gui/inventory/GuiContainer I java/util/List] []
+ ILOAD 2
+ IFEQ L13
+ L14
+ LINENUMBER 132 L14
+ GETSTATIC codechicken/nei/guihook/GuiContainerManager.tooltipHandlers : Ljava/util/LinkedList;
+ INVOKEVIRTUAL java/util/LinkedList.iterator ()Ljava/util/Iterator;
+ ASTORE 4
+ L15
+ FRAME FULL [net/minecraft/item/ItemStack net/minecraft/client/gui/inventory/GuiContainer I java/util/List java/util/Iterator] []
+ ALOAD 4
+ INVOKEINTERFACE java/util/Iterator.hasNext ()Z
+ IFEQ L13
+ ALOAD 4
+ INVOKEINTERFACE java/util/Iterator.next ()Ljava/lang/Object;
+ CHECKCAST codechicken/nei/guihook/IContainerTooltipHandler
+ ASTORE 5
+ L16
+ LINENUMBER 133 L16
+ ALOAD 5
+ ALOAD 1
+ ALOAD 0
+ ALOAD 3
+ INVOKEINTERFACE codechicken/nei/guihook/IContainerTooltipHandler.handleItemDisplayName (Lnet/minecraft/client/gui/inventory/GuiContainer;Lnet/minecraft/item/ItemStack;Ljava/util/List;)Ljava/util/List;
+ ASTORE 3
+ L17
+ LINENUMBER 134 L17
+ GOTO L15
+ L13
+ LINENUMBER 137 L13
+ FRAME FULL [net/minecraft/item/ItemStack net/minecraft/client/gui/inventory/GuiContainer I java/util/List] []
+ ALOAD 3
+ ICONST_0
+ NEW java/lang/StringBuilder
+ DUP
+ INVOKESPECIAL java/lang/StringBuilder. ()V
+ ALOAD 0
+ INVOKEVIRTUAL net/minecraft/item/ItemStack.getRarity ()Lnet/minecraft/item/EnumRarity;
+ GETFIELD net/minecraft/item/EnumRarity.rarityColor : Lnet/minecraft/util/EnumChatFormatting;
+ INVOKEVIRTUAL net/minecraft/util/EnumChatFormatting.toString ()Ljava/lang/String;
+ INVOKEVIRTUAL java/lang/StringBuilder.append (Ljava/lang/String;)Ljava/lang/StringBuilder;
+ ALOAD 3
+ ICONST_0
+ INVOKEINTERFACE java/util/List.get (I)Ljava/lang/Object;
+ CHECKCAST java/lang/String
+ INVOKEVIRTUAL java/lang/StringBuilder.append (Ljava/lang/String;)Ljava/lang/StringBuilder;
+ INVOKEVIRTUAL java/lang/StringBuilder.toString ()Ljava/lang/String;
+ INVOKEINTERFACE java/util/List.set (ILjava/lang/Object;)Ljava/lang/Object;
+ POP
+ L18
+ LINENUMBER 138 L18
+ ICONST_1
+ ISTORE 4
+ L19
+ FRAME FULL [net/minecraft/item/ItemStack net/minecraft/client/gui/inventory/GuiContainer I java/util/List I] []
+ ILOAD 4
+ ALOAD 3
+ INVOKEINTERFACE java/util/List.size ()I
+ IF_ICMPGE L20
+ L21
+ LINENUMBER 139 L21
+ ALOAD 3
+ ILOAD 4
+ NEW java/lang/StringBuilder
+ DUP
+ INVOKESPECIAL java/lang/StringBuilder. ()V
+ LDC "\u00a77"
+ INVOKEVIRTUAL java/lang/StringBuilder.append (Ljava/lang/String;)Ljava/lang/StringBuilder;
+ ALOAD 3
+ ILOAD 4
+ INVOKEINTERFACE java/util/List.get (I)Ljava/lang/Object;
+ CHECKCAST java/lang/String
+ INVOKEVIRTUAL java/lang/StringBuilder.append (Ljava/lang/String;)Ljava/lang/StringBuilder;
+ INVOKEVIRTUAL java/lang/StringBuilder.toString ()Ljava/lang/String;
+ INVOKEINTERFACE java/util/List.set (ILjava/lang/Object;)Ljava/lang/Object;
+ POP
+ L22
+ LINENUMBER 138 L22
+ IINC 4 1
+ GOTO L19
+ L20
+ LINENUMBER 141 L20
+ FRAME FULL [net/minecraft/item/ItemStack net/minecraft/client/gui/inventory/GuiContainer I java/util/List I] []
+ ALOAD 3
+ ARETURN
+ L23
+ LOCALVARIABLE ignored Ljava/lang/Throwable; L6 L6 4
+ LOCALVARIABLE handler Lcodechicken/nei/guihook/IContainerTooltipHandler; L16 L17 5
+ LOCALVARIABLE i$ Ljava/util/Iterator; L15 L13 4
+ LOCALVARIABLE i I L19 L20 4
+ LOCALVARIABLE stack Lnet/minecraft/item/ItemStack; L3 L23 0
+ LOCALVARIABLE gui Lnet/minecraft/client/gui/inventory/GuiContainer; L3 L23 1
+ LOCALVARIABLE includeHandlers Z L3 L23 2
+ LOCALVARIABLE namelist Ljava/util/List; L0 L23 3
+ // signature Ljava/util/List;
+ // declaration: java.util.List
+ MAXSTACK = 5
+ MAXLOCALS = 6
+
+ // access flags 0x9
+ public static itemDisplayNameShort(Lnet/minecraft/item/ItemStack;)Ljava/lang/String;
+ L0
+ LINENUMBER 151 L0
+ ALOAD 0
+ ACONST_NULL
+ ICONST_0
+ INVOKESTATIC codechicken/nei/guihook/GuiContainerManager.itemDisplayNameMultiline (Lnet/minecraft/item/ItemStack;Lnet/minecraft/client/gui/inventory/GuiContainer;Z)Ljava/util/List;
+ ASTORE 1
+ L1
+ LINENUMBER 152 L1
+ ALOAD 1
+ ICONST_0
+ INVOKEINTERFACE java/util/List.get (I)Ljava/lang/Object;
+ CHECKCAST java/lang/String
+ ARETURN
+ L2
+ LOCALVARIABLE itemstack Lnet/minecraft/item/ItemStack; L0 L2 0
+ LOCALVARIABLE list Ljava/util/List; L1 L2 1
+ // signature Ljava/util/List;
+ // declaration: java.util.List
+ MAXSTACK = 3
+ MAXLOCALS = 2
+
+ // access flags 0x9
+ public static concatenatedDisplayName(Lnet/minecraft/item/ItemStack;Z)Ljava/lang/String;
+ L0
+ LINENUMBER 162 L0
+ ALOAD 0
+ ACONST_NULL
+ ILOAD 1
+ INVOKESTATIC codechicken/nei/guihook/GuiContainerManager.itemDisplayNameMultiline (Lnet/minecraft/item/ItemStack;Lnet/minecraft/client/gui/inventory/GuiContainer;Z)Ljava/util/List;
+ ASTORE 2
+ L1
+ LINENUMBER 163 L1
+ NEW java/lang/StringBuilder
+ DUP
+ INVOKESPECIAL java/lang/StringBuilder. ()V
+ ASTORE 3
+ L2
+ LINENUMBER 164 L2
+ ICONST_1
+ ISTORE 4
+ L3
+ LINENUMBER 165 L3
+ ALOAD 2
+ INVOKEINTERFACE java/util/List.iterator ()Ljava/util/Iterator;
+ ASTORE 5
+ L4
+ FRAME FULL [net/minecraft/item/ItemStack I java/util/List java/lang/StringBuilder I java/util/Iterator] []
+ ALOAD 5
+ INVOKEINTERFACE java/util/Iterator.hasNext ()Z
+ IFEQ L5
+ ALOAD 5
+ INVOKEINTERFACE java/util/Iterator.next ()Ljava/lang/Object;
+ CHECKCAST java/lang/String
+ ASTORE 6
+ L6
+ LINENUMBER 166 L6
+ ILOAD 4
+ IFEQ L7
+ L8
+ LINENUMBER 167 L8
+ ICONST_0
+ ISTORE 4
+ GOTO L9
+ L7
+ LINENUMBER 169 L7
+ FRAME FULL [net/minecraft/item/ItemStack I java/util/List java/lang/StringBuilder I java/util/Iterator java/lang/String] []
+ ALOAD 3
+ LDC "#"
+ INVOKEVIRTUAL java/lang/StringBuilder.append (Ljava/lang/String;)Ljava/lang/StringBuilder;
+ POP
+ L9
+ LINENUMBER 171 L9
+ FRAME FULL [net/minecraft/item/ItemStack I java/util/List java/lang/StringBuilder I java/util/Iterator java/lang/String] []
+ ALOAD 3
+ ALOAD 6
+ INVOKEVIRTUAL java/lang/StringBuilder.append (Ljava/lang/String;)Ljava/lang/StringBuilder;
+ POP
+ L10
+ LINENUMBER 172 L10
+ GOTO L4
+ L5
+ LINENUMBER 173 L5
+ FRAME FULL [net/minecraft/item/ItemStack I java/util/List java/lang/StringBuilder I java/util/Iterator] []
+ ALOAD 3
+ INVOKEVIRTUAL java/lang/StringBuilder.toString ()Ljava/lang/String;
+ INVOKESTATIC net/minecraft/util/EnumChatFormatting.getTextWithoutFormattingCodes (Ljava/lang/String;)Ljava/lang/String;
+ ARETURN
+ L11
+ LOCALVARIABLE name Ljava/lang/String; L6 L10 6
+ LOCALVARIABLE i$ Ljava/util/Iterator; L4 L5 5
+ LOCALVARIABLE itemstack Lnet/minecraft/item/ItemStack; L0 L11 0
+ LOCALVARIABLE includeHandlers Z L0 L11 1
+ LOCALVARIABLE list Ljava/util/List; L1 L11 2
+ // signature Ljava/util/List;
+ // declaration: java.util.List
+ LOCALVARIABLE sb Ljava/lang/StringBuilder; L2 L11 3
+ LOCALVARIABLE first Z L3 L11 4
+ MAXSTACK = 3
+ MAXLOCALS = 7
+
+ // access flags 0x9
+ public static drawItem(IILnet/minecraft/item/ItemStack;)V
+ L0
+ LINENUMBER 177 L0
+ ILOAD 0
+ ILOAD 1
+ ALOAD 2
+ ALOAD 2
+ INVOKESTATIC codechicken/nei/guihook/GuiContainerManager.getFontRenderer (Lnet/minecraft/item/ItemStack;)Lnet/minecraft/client/gui/FontRenderer;
+ INVOKESTATIC codechicken/nei/guihook/GuiContainerManager.drawItem (IILnet/minecraft/item/ItemStack;Lnet/minecraft/client/gui/FontRenderer;)V
+ L1
+ LINENUMBER 178 L1
+ RETURN
+ L2
+ LOCALVARIABLE i I L0 L2 0
+ LOCALVARIABLE j I L0 L2 1
+ LOCALVARIABLE itemstack Lnet/minecraft/item/ItemStack; L0 L2 2
+ MAXSTACK = 4
+ MAXLOCALS = 3
+
+ // access flags 0x9
+ public static drawItem(IILnet/minecraft/item/ItemStack;Lnet/minecraft/client/gui/FontRenderer;)V
+ TRYCATCHBLOCK L0 L1 L2 java/lang/Exception
+ L3
+ LINENUMBER 184 L3
+ INVOKESTATIC codechicken/nei/guihook/GuiContainerManager.enable3DRender ()V
+ L4
+ LINENUMBER 185 L4
+ GETSTATIC codechicken/nei/guihook/GuiContainerManager.drawItems : Lnet/minecraft/client/renderer/entity/RenderItem;
+ DUP
+ GETFIELD net/minecraft/client/renderer/entity/RenderItem.zLevel : F
+ LDC 100.0
+ FADD
+ DUP_X1
+ PUTFIELD net/minecraft/client/renderer/entity/RenderItem.zLevel : F
+ FSTORE 4
+ L0
+ LINENUMBER 187 L0
+ GETSTATIC codechicken/nei/guihook/GuiContainerManager.drawItems : Lnet/minecraft/client/renderer/entity/RenderItem;
+ ALOAD 3
+ GETSTATIC codechicken/lib/gui/GuiDraw.renderEngine : Lnet/minecraft/client/renderer/texture/TextureManager;
+ ALOAD 2
+ ILOAD 0
+ ILOAD 1
+ INVOKEVIRTUAL net/minecraft/client/renderer/entity/RenderItem.renderItemAndEffectIntoGUI (Lnet/minecraft/client/gui/FontRenderer;Lnet/minecraft/client/renderer/texture/TextureManager;Lnet/minecraft/item/ItemStack;II)V
+ L5
+ LINENUMBER 188 L5
+ GETSTATIC codechicken/nei/guihook/GuiContainerManager.drawItems : Lnet/minecraft/client/renderer/entity/RenderItem;
+ ALOAD 3
+ GETSTATIC codechicken/lib/gui/GuiDraw.renderEngine : Lnet/minecraft/client/renderer/texture/TextureManager;
+ ALOAD 2
+ ILOAD 0
+ ILOAD 1
+ INVOKEVIRTUAL net/minecraft/client/renderer/entity/RenderItem.renderItemOverlayIntoGUI (Lnet/minecraft/client/gui/FontRenderer;Lnet/minecraft/client/renderer/texture/TextureManager;Lnet/minecraft/item/ItemStack;II)V
+ L6
+ LINENUMBER 190 L6
+ INVOKESTATIC codechicken/nei/guihook/GuiContainerManager.checkMatrixStack ()Z
+ IFNE L7
+ L8
+ LINENUMBER 191 L8
+ NEW java/lang/IllegalStateException
+ DUP
+ LDC "Modelview matrix stack too deep"
+ INVOKESPECIAL java/lang/IllegalStateException. (Ljava/lang/String;)V
+ ATHROW
+ L7
+ LINENUMBER 192 L7
+ FRAME FULL [I I net/minecraft/item/ItemStack net/minecraft/client/gui/FontRenderer F] []
+ GETSTATIC net/minecraft/client/renderer/Tessellator.instance : Lnet/minecraft/client/renderer/Tessellator;
+ GETFIELD net/minecraft/client/renderer/Tessellator.isDrawing : Z
+ IFEQ L1
+ L9
+ LINENUMBER 193 L9
+ NEW java/lang/IllegalStateException
+ DUP
+ LDC "Still drawing"
+ INVOKESPECIAL java/lang/IllegalStateException. (Ljava/lang/String;)V
+ ATHROW
+ L1
+ LINENUMBER 210 L1
+ FRAME FULL [I I net/minecraft/item/ItemStack net/minecraft/client/gui/FontRenderer F] []
+ GOTO L10
+ L2
+ LINENUMBER 194 L2
+ FRAME FULL [I I net/minecraft/item/ItemStack net/minecraft/client/gui/FontRenderer F] [java/lang/Exception]
+ ASTORE 5
+ L11
+ LINENUMBER 195 L11
+ NEW java/io/StringWriter
+ DUP
+ INVOKESPECIAL java/io/StringWriter. ()V
+ ASTORE 6
+ L12
+ LINENUMBER 196 L12
+ ALOAD 5
+ NEW java/io/PrintWriter
+ DUP
+ ALOAD 6
+ INVOKESPECIAL java/io/PrintWriter. (Ljava/io/Writer;)V
+ INVOKEVIRTUAL java/lang/Exception.printStackTrace (Ljava/io/PrintWriter;)V
+ L13
+ LINENUMBER 197 L13
+ NEW java/lang/StringBuilder
+ DUP
+ INVOKESPECIAL java/lang/StringBuilder. ()V
+ ALOAD 2
+ INVOKEVIRTUAL java/lang/StringBuilder.append (Ljava/lang/Object;)Ljava/lang/StringBuilder;
+ ALOAD 6
+ INVOKEVIRTUAL java/io/StringWriter.toString ()Ljava/lang/String;
+ INVOKEVIRTUAL java/lang/StringBuilder.append (Ljava/lang/String;)Ljava/lang/StringBuilder;
+ INVOKEVIRTUAL java/lang/StringBuilder.toString ()Ljava/lang/String;
+ ASTORE 7
+ L14
+ LINENUMBER 198 L14
+ GETSTATIC codechicken/nei/guihook/GuiContainerManager.stackTraces : Ljava/util/HashSet;
+ ALOAD 7
+ INVOKEVIRTUAL java/util/HashSet.contains (Ljava/lang/Object;)Z
+ IFNE L15
+ L16
+ LINENUMBER 199 L16
+ GETSTATIC java/lang/System.err : Ljava/io/PrintStream;
+ NEW java/lang/StringBuilder
+ DUP
+ INVOKESPECIAL java/lang/StringBuilder. ()V
+ LDC "Error while rendering: "
+ INVOKEVIRTUAL java/lang/StringBuilder.append (Ljava/lang/String;)Ljava/lang/StringBuilder;
+ ALOAD 2
+ INVOKEVIRTUAL java/lang/StringBuilder.append (Ljava/lang/Object;)Ljava/lang/StringBuilder;
+ INVOKEVIRTUAL java/lang/StringBuilder.toString ()Ljava/lang/String;
+ INVOKEVIRTUAL java/io/PrintStream.println (Ljava/lang/String;)V
+ L17
+ LINENUMBER 200 L17
+ ALOAD 5
+ INVOKEVIRTUAL java/lang/Exception.printStackTrace ()V
+ L18
+ LINENUMBER 201 L18
+ GETSTATIC codechicken/nei/guihook/GuiContainerManager.stackTraces : Ljava/util/HashSet;
+ ALOAD 7
+ INVOKEVIRTUAL java/util/HashSet.add (Ljava/lang/Object;)Z
+ POP
+ L15
+ LINENUMBER 204 L15
+ FRAME FULL [I I net/minecraft/item/ItemStack net/minecraft/client/gui/FontRenderer F java/lang/Exception java/io/StringWriter java/lang/String] []
+ INVOKESTATIC codechicken/nei/guihook/GuiContainerManager.restoreMatrixStack ()V
+ L19
+ LINENUMBER 205 L19
+ GETSTATIC net/minecraft/client/renderer/Tessellator.instance : Lnet/minecraft/client/renderer/Tessellator;
+ GETFIELD net/minecraft/client/renderer/Tessellator.isDrawing : Z
+ IFEQ L20
+ L21
+ LINENUMBER 206 L21
+ GETSTATIC net/minecraft/client/renderer/Tessellator.instance : Lnet/minecraft/client/renderer/Tessellator;
+ INVOKEVIRTUAL net/minecraft/client/renderer/Tessellator.draw ()I
+ POP
+ L20
+ LINENUMBER 208 L20
+ FRAME FULL [I I net/minecraft/item/ItemStack net/minecraft/client/gui/FontRenderer F java/lang/Exception java/io/StringWriter java/lang/String] []
+ GETSTATIC codechicken/nei/guihook/GuiContainerManager.drawItems : Lnet/minecraft/client/renderer/entity/RenderItem;
+ FLOAD 4
+ PUTFIELD net/minecraft/client/renderer/entity/RenderItem.zLevel : F
+ L22
+ LINENUMBER 209 L22
+ GETSTATIC codechicken/nei/guihook/GuiContainerManager.drawItems : Lnet/minecraft/client/renderer/entity/RenderItem;
+ ALOAD 3
+ GETSTATIC codechicken/lib/gui/GuiDraw.renderEngine : Lnet/minecraft/client/renderer/texture/TextureManager;
+ NEW net/minecraft/item/ItemStack
+ DUP
+ GETSTATIC net/minecraft/init/Blocks.fire : Lnet/minecraft/block/BlockFire;
+ INVOKESPECIAL net/minecraft/item/ItemStack. (Lnet/minecraft/block/Block;)V
+ ILOAD 0
+ ILOAD 1
+ INVOKEVIRTUAL net/minecraft/client/renderer/entity/RenderItem.renderItemIntoGUI (Lnet/minecraft/client/gui/FontRenderer;Lnet/minecraft/client/renderer/texture/TextureManager;Lnet/minecraft/item/ItemStack;II)V
+ L10
+ LINENUMBER 212 L10
+ FRAME FULL [I I net/minecraft/item/ItemStack net/minecraft/client/gui/FontRenderer F] []
+ INVOKESTATIC codechicken/nei/guihook/GuiContainerManager.enable2DRender ()V
+ L23
+ LINENUMBER 213 L23
+ GETSTATIC codechicken/nei/guihook/GuiContainerManager.drawItems : Lnet/minecraft/client/renderer/entity/RenderItem;
+ FLOAD 4
+ LDC 100.0
+ FSUB
+ PUTFIELD net/minecraft/client/renderer/entity/RenderItem.zLevel : F
+ L24
+ LINENUMBER 214 L24
+ RETURN
+ L25
+ LOCALVARIABLE sw Ljava/io/StringWriter; L12 L10 6
+ LOCALVARIABLE stackTrace Ljava/lang/String; L14 L10 7
+ LOCALVARIABLE e Ljava/lang/Exception; L11 L10 5
+ LOCALVARIABLE i I L3 L25 0
+ LOCALVARIABLE j I L3 L25 1
+ LOCALVARIABLE itemstack Lnet/minecraft/item/ItemStack; L3 L25 2
+ LOCALVARIABLE fontRenderer Lnet/minecraft/client/gui/FontRenderer; L3 L25 3
+ LOCALVARIABLE zLevel F L0 L25 4
+ MAXSTACK = 6
+ MAXLOCALS = 8
+
+ // access flags 0x9
+ public static enableMatrixStackLogging()V
+ L0
+ LINENUMBER 217 L0
+ SIPUSH 2979
+ INVOKESTATIC org/lwjgl/opengl/GL11.glGetInteger (I)I
+ PUTSTATIC codechicken/nei/guihook/GuiContainerManager.modelviewDepth : I
+ L1
+ LINENUMBER 218 L1
+ RETURN
+ MAXSTACK = 1
+ MAXLOCALS = 0
+
+ // access flags 0x9
+ public static disableMatrixStackLogging()V
+ L0
+ LINENUMBER 221 L0
+ ICONST_M1
+ PUTSTATIC codechicken/nei/guihook/GuiContainerManager.modelviewDepth : I
+ L1
+ LINENUMBER 222 L1
+ RETURN
+ MAXSTACK = 1
+ MAXLOCALS = 0
+
+ // access flags 0x9
+ public static checkMatrixStack()Z
+ L0
+ LINENUMBER 225 L0
+ GETSTATIC codechicken/nei/guihook/GuiContainerManager.modelviewDepth : I
+ IFLT L1
+ SIPUSH 2979
+ INVOKESTATIC org/lwjgl/opengl/GL11.glGetInteger (I)I
+ GETSTATIC codechicken/nei/guihook/GuiContainerManager.modelviewDepth : I
+ IF_ICMPNE L2
+ L1
+ FRAME FULL [] []
+ ICONST_1
+ GOTO L3
+ L2
+ FRAME FULL [] []
+ ICONST_0
+ L3
+ FRAME FULL [] [I]
+ IRETURN
+ MAXSTACK = 2
+ MAXLOCALS = 0
+
+ // access flags 0x9
+ public static restoreMatrixStack()V
+ L0
+ LINENUMBER 229 L0
+ GETSTATIC codechicken/nei/guihook/GuiContainerManager.modelviewDepth : I
+ IFLT L1
+ L2
+ LINENUMBER 230 L2
+ SIPUSH 2979
+ INVOKESTATIC org/lwjgl/opengl/GL11.glGetInteger (I)I
+ ISTORE 0
+ L3
+ FRAME FULL [I] []
+ ILOAD 0
+ GETSTATIC codechicken/nei/guihook/GuiContainerManager.modelviewDepth : I
+ IF_ICMPLE L1
+ L4
+ LINENUMBER 231 L4
+ INVOKESTATIC org/lwjgl/opengl/GL11.glPopMatrix ()V
+ L5
+ LINENUMBER 230 L5
+ IINC 0 -1
+ GOTO L3
+ L1
+ LINENUMBER 232 L1
+ FRAME FULL [] []
+ RETURN
+ LOCALVARIABLE i I L3 L1 0
+ MAXSTACK = 2
+ MAXLOCALS = 1
+
+ // access flags 0x9
+ public static setColouredItemRender(Z)V
+ L0
+ LINENUMBER 235 L0
+ GETSTATIC codechicken/nei/guihook/GuiContainerManager.drawItems : Lnet/minecraft/client/renderer/entity/RenderItem;
+ ILOAD 0
+ IFNE L1
+ ICONST_1
+ GOTO L2
+ L1
+ FRAME FULL [I] [net/minecraft/client/renderer/entity/RenderItem]
+ ICONST_0
+ L2
+ FRAME FULL [I] [net/minecraft/client/renderer/entity/RenderItem I]
+ PUTFIELD net/minecraft/client/renderer/entity/RenderItem.renderWithColor : Z
+ L3
+ LINENUMBER 236 L3
+ RETURN
+ L4
+ LOCALVARIABLE enable Z L0 L4 0
+ MAXSTACK = 2
+ MAXLOCALS = 1
+
+ // access flags 0x9
+ public static enable3DRender()V
+ L0
+ LINENUMBER 239 L0
+ SIPUSH 2896
+ INVOKESTATIC org/lwjgl/opengl/GL11.glEnable (I)V
+ L1
+ LINENUMBER 240 L1
+ SIPUSH 2929
+ INVOKESTATIC org/lwjgl/opengl/GL11.glEnable (I)V
+ L2
+ LINENUMBER 241 L2
+ RETURN
+ MAXSTACK = 1
+ MAXLOCALS = 0
+
+ // access flags 0x9
+ public static enable2DRender()V
+ L0
+ LINENUMBER 244 L0
+ SIPUSH 2896
+ INVOKESTATIC org/lwjgl/opengl/GL11.glDisable (I)V
+ L1
+ LINENUMBER 245 L1
+ SIPUSH 2929
+ INVOKESTATIC org/lwjgl/opengl/GL11.glDisable (I)V
+ L2
+ LINENUMBER 246 L2
+ RETURN
+ MAXSTACK = 1
+ MAXLOCALS = 0
+
+ // access flags 0x1
+ public (Lnet/minecraft/client/gui/inventory/GuiContainer;)V
+ L0
+ LINENUMBER 251 L0
+ ALOAD 0
+ INVOKESPECIAL java/lang/Object. ()V
+ L1
+ LINENUMBER 248 L1
+ ALOAD 0
+ ICONST_0
+ PUTFIELD codechicken/nei/guihook/GuiContainerManager.clickHandled : I
+ L2
+ LINENUMBER 252 L2
+ ALOAD 0
+ ALOAD 1
+ PUTFIELD codechicken/nei/guihook/GuiContainerManager.window : Lnet/minecraft/client/gui/inventory/GuiContainer;
+ L3
+ LINENUMBER 253 L3
+ ALOAD 1
+ INSTANCEOF codechicken/nei/guihook/IContainerTooltipHandler
+ IFEQ L4
+ L5
+ LINENUMBER 254 L5
+ ALOAD 0
+ NEW java/util/LinkedList
+ DUP
+ INVOKESPECIAL java/util/LinkedList. ()V
+ PUTFIELD codechicken/nei/guihook/GuiContainerManager.instanceTooltipHandlers : Ljava/util/List;
+ L6
+ LINENUMBER 255 L6
+ ALOAD 0
+ GETFIELD codechicken/nei/guihook/GuiContainerManager.instanceTooltipHandlers : Ljava/util/List;
+ ALOAD 1
+ CHECKCAST codechicken/nei/guihook/IContainerTooltipHandler
+ INVOKEINTERFACE java/util/List.add (Ljava/lang/Object;)Z
+ POP
+ L7
+ LINENUMBER 256 L7
+ ALOAD 0
+ GETFIELD codechicken/nei/guihook/GuiContainerManager.instanceTooltipHandlers : Ljava/util/List;
+ GETSTATIC codechicken/nei/guihook/GuiContainerManager.tooltipHandlers : Ljava/util/LinkedList;
+ INVOKEINTERFACE java/util/List.addAll (Ljava/util/Collection;)Z
+ POP
+ GOTO L8
+ L4
+ LINENUMBER 258 L4
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager net/minecraft/client/gui/inventory/GuiContainer] []
+ ALOAD 0
+ GETSTATIC codechicken/nei/guihook/GuiContainerManager.tooltipHandlers : Ljava/util/LinkedList;
+ PUTFIELD codechicken/nei/guihook/GuiContainerManager.instanceTooltipHandlers : Ljava/util/List;
+ L8
+ LINENUMBER 259 L8
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager net/minecraft/client/gui/inventory/GuiContainer] []
+ RETURN
+ L9
+ LOCALVARIABLE this Lcodechicken/nei/guihook/GuiContainerManager; L0 L9 0
+ LOCALVARIABLE screen Lnet/minecraft/client/gui/inventory/GuiContainer; L0 L9 1
+ MAXSTACK = 3
+ MAXLOCALS = 2
+
+ // access flags 0x9
+ public static getStackMouseOver(Lnet/minecraft/client/gui/inventory/GuiContainer;)Lnet/minecraft/item/ItemStack;
+ L0
+ LINENUMBER 262 L0
+ INVOKESTATIC codechicken/lib/gui/GuiDraw.getMousePosition ()Ljava/awt/Point;
+ ASTORE 1
+ L1
+ LINENUMBER 264 L1
+ GETSTATIC codechicken/nei/guihook/GuiContainerManager.objectHandlers : Ljava/util/LinkedList;
+ INVOKEVIRTUAL java/util/LinkedList.iterator ()Ljava/util/Iterator;
+ ASTORE 2
+ L2
+ FRAME FULL [net/minecraft/client/gui/inventory/GuiContainer java/awt/Point java/util/Iterator] []
+ ALOAD 2
+ INVOKEINTERFACE java/util/Iterator.hasNext ()Z
+ IFEQ L3
+ ALOAD 2
+ INVOKEINTERFACE java/util/Iterator.next ()Ljava/lang/Object;
+ CHECKCAST codechicken/nei/guihook/IContainerObjectHandler
+ ASTORE 3
+ L4
+ LINENUMBER 265 L4
+ ALOAD 3
+ ALOAD 0
+ ALOAD 1
+ GETFIELD java/awt/Point.x : I
+ ALOAD 1
+ GETFIELD java/awt/Point.y : I
+ INVOKEINTERFACE codechicken/nei/guihook/IContainerObjectHandler.getStackUnderMouse (Lnet/minecraft/client/gui/inventory/GuiContainer;II)Lnet/minecraft/item/ItemStack;
+ ASTORE 4
+ L5
+ LINENUMBER 266 L5
+ ALOAD 4
+ IFNULL L6
+ L7
+ LINENUMBER 267 L7
+ ALOAD 4
+ ARETURN
+ L6
+ LINENUMBER 268 L6
+ FRAME FULL [net/minecraft/client/gui/inventory/GuiContainer java/awt/Point java/util/Iterator codechicken/nei/guihook/IContainerObjectHandler net/minecraft/item/ItemStack] []
+ GOTO L2
+ L3
+ LINENUMBER 270 L3
+ FRAME FULL [net/minecraft/client/gui/inventory/GuiContainer java/awt/Point java/util/Iterator] []
+ ALOAD 0
+ INVOKESTATIC codechicken/nei/guihook/GuiContainerManager.getSlotMouseOver (Lnet/minecraft/client/gui/inventory/GuiContainer;)Lnet/minecraft/inventory/Slot;
+ ASTORE 2
+ L8
+ LINENUMBER 271 L8
+ ALOAD 2
+ IFNULL L9
+ L10
+ LINENUMBER 272 L10
+ ALOAD 2
+ INVOKEVIRTUAL net/minecraft/inventory/Slot.getStack ()Lnet/minecraft/item/ItemStack;
+ ARETURN
+ L9
+ LINENUMBER 274 L9
+ FRAME FULL [net/minecraft/client/gui/inventory/GuiContainer java/awt/Point net/minecraft/inventory/Slot] []
+ ACONST_NULL
+ ARETURN
+ L11
+ LOCALVARIABLE item Lnet/minecraft/item/ItemStack; L5 L6 4
+ LOCALVARIABLE objectHandler Lcodechicken/nei/guihook/IContainerObjectHandler; L4 L6 3
+ LOCALVARIABLE i$ Ljava/util/Iterator; L2 L3 2
+ LOCALVARIABLE window Lnet/minecraft/client/gui/inventory/GuiContainer; L0 L11 0
+ LOCALVARIABLE mousePos Ljava/awt/Point; L1 L11 1
+ LOCALVARIABLE slot Lnet/minecraft/inventory/Slot; L8 L11 2
+ MAXSTACK = 4
+ MAXLOCALS = 5
+
+ // access flags 0x9
+ public static getSlotMouseOver(Lnet/minecraft/client/gui/inventory/GuiContainer;)Lnet/minecraft/inventory/Slot;
+ L0
+ LINENUMBER 278 L0
+ INVOKESTATIC codechicken/lib/gui/GuiDraw.getMousePosition ()Ljava/awt/Point;
+ ASTORE 1
+ L1
+ LINENUMBER 279 L1
+ ALOAD 0
+ INVOKESTATIC codechicken/nei/guihook/GuiContainerManager.getManager (Lnet/minecraft/client/gui/inventory/GuiContainer;)Lcodechicken/nei/guihook/GuiContainerManager;
+ ALOAD 1
+ GETFIELD java/awt/Point.x : I
+ ALOAD 1
+ GETFIELD java/awt/Point.y : I
+ INVOKEVIRTUAL codechicken/nei/guihook/GuiContainerManager.objectUnderMouse (II)Z
+ IFEQ L2
+ L3
+ LINENUMBER 280 L3
+ ACONST_NULL
+ ARETURN
+ L2
+ LINENUMBER 282 L2
+ FRAME FULL [net/minecraft/client/gui/inventory/GuiContainer java/awt/Point] []
+ ALOAD 0
+ ALOAD 1
+ GETFIELD java/awt/Point.x : I
+ ALOAD 1
+ GETFIELD java/awt/Point.y : I
+ INVOKEVIRTUAL net/minecraft/client/gui/inventory/GuiContainer.getSlotAtPosition (II)Lnet/minecraft/inventory/Slot;
+ ARETURN
+ L4
+ LOCALVARIABLE window Lnet/minecraft/client/gui/inventory/GuiContainer; L0 L4 0
+ LOCALVARIABLE mousePos Ljava/awt/Point; L1 L4 1
+ MAXSTACK = 3
+ MAXLOCALS = 2
+
+ // access flags 0x1
+ public load()V
+ L0
+ LINENUMBER 286 L0
+ ALOAD 0
+ ICONST_0
+ PUTFIELD codechicken/nei/guihook/GuiContainerManager.clickHandled : I
+ L1
+ LINENUMBER 287 L1
+ GETSTATIC codechicken/nei/guihook/GuiContainerManager.objectHandlers : Ljava/util/LinkedList;
+ INVOKEVIRTUAL java/util/LinkedList.iterator ()Ljava/util/Iterator;
+ ASTORE 1
+ L2
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager java/util/Iterator] []
+ ALOAD 1
+ INVOKEINTERFACE java/util/Iterator.hasNext ()Z
+ IFEQ L3
+ ALOAD 1
+ INVOKEINTERFACE java/util/Iterator.next ()Ljava/lang/Object;
+ CHECKCAST codechicken/nei/guihook/IContainerObjectHandler
+ ASTORE 2
+ L4
+ LINENUMBER 288 L4
+ ALOAD 2
+ ALOAD 0
+ GETFIELD codechicken/nei/guihook/GuiContainerManager.window : Lnet/minecraft/client/gui/inventory/GuiContainer;
+ INVOKEINTERFACE codechicken/nei/guihook/IContainerObjectHandler.load (Lnet/minecraft/client/gui/inventory/GuiContainer;)V
+ L5
+ GOTO L2
+ L3
+ LINENUMBER 289 L3
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager java/util/Iterator] []
+ RETURN
+ L6
+ LOCALVARIABLE objectHandler Lcodechicken/nei/guihook/IContainerObjectHandler; L4 L5 2
+ LOCALVARIABLE i$ Ljava/util/Iterator; L2 L3 1
+ LOCALVARIABLE this Lcodechicken/nei/guihook/GuiContainerManager; L0 L6 0
+ MAXSTACK = 2
+ MAXLOCALS = 3
+
+ // access flags 0x1
+ public updateScreen()V
+ L0
+ LINENUMBER 295 L0
+ GETSTATIC codechicken/nei/guihook/GuiContainerManager.objectHandlers : Ljava/util/LinkedList;
+ INVOKEVIRTUAL java/util/LinkedList.iterator ()Ljava/util/Iterator;
+ ASTORE 1
+ L1
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager java/util/Iterator] []
+ ALOAD 1
+ INVOKEINTERFACE java/util/Iterator.hasNext ()Z
+ IFEQ L2
+ ALOAD 1
+ INVOKEINTERFACE java/util/Iterator.next ()Ljava/lang/Object;
+ CHECKCAST codechicken/nei/guihook/IContainerObjectHandler
+ ASTORE 2
+ L3
+ LINENUMBER 296 L3
+ ALOAD 2
+ ALOAD 0
+ GETFIELD codechicken/nei/guihook/GuiContainerManager.window : Lnet/minecraft/client/gui/inventory/GuiContainer;
+ INVOKEINTERFACE codechicken/nei/guihook/IContainerObjectHandler.guiTick (Lnet/minecraft/client/gui/inventory/GuiContainer;)V
+ L4
+ GOTO L1
+ L2
+ LINENUMBER 297 L2
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager java/util/Iterator] []
+ RETURN
+ L5
+ LOCALVARIABLE objectHandler Lcodechicken/nei/guihook/IContainerObjectHandler; L3 L4 2
+ LOCALVARIABLE i$ Ljava/util/Iterator; L1 L2 1
+ LOCALVARIABLE this Lcodechicken/nei/guihook/GuiContainerManager; L0 L5 0
+ MAXSTACK = 2
+ MAXLOCALS = 3
+
+ // access flags 0x1
+ public lastKeyTyped(IC)Z
+ L0
+ LINENUMBER 303 L0
+ ILOAD 1
+ ICONST_1
+ IF_ICMPNE L1
+ L2
+ LINENUMBER 304 L2
+ ICONST_0
+ IRETURN
+ L1
+ LINENUMBER 306 L1
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager I I] []
+ GETSTATIC codechicken/nei/guihook/GuiContainerManager.inputHandlers : Ljava/util/LinkedList;
+ INVOKEVIRTUAL java/util/LinkedList.iterator ()Ljava/util/Iterator;
+ ASTORE 3
+ L3
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager I I java/util/Iterator] []
+ ALOAD 3
+ INVOKEINTERFACE java/util/Iterator.hasNext ()Z
+ IFEQ L4
+ ALOAD 3
+ INVOKEINTERFACE java/util/Iterator.next ()Ljava/lang/Object;
+ CHECKCAST codechicken/nei/guihook/IContainerInputHandler
+ ASTORE 4
+ L5
+ LINENUMBER 307 L5
+ ALOAD 4
+ ALOAD 0
+ GETFIELD codechicken/nei/guihook/GuiContainerManager.window : Lnet/minecraft/client/gui/inventory/GuiContainer;
+ ILOAD 2
+ ILOAD 1
+ INVOKEINTERFACE codechicken/nei/guihook/IContainerInputHandler.lastKeyTyped (Lnet/minecraft/client/gui/inventory/GuiContainer;CI)Z
+ IFEQ L6
+ L7
+ LINENUMBER 308 L7
+ ICONST_1
+ IRETURN
+ L6
+ LINENUMBER 307 L6
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager I I java/util/Iterator codechicken/nei/guihook/IContainerInputHandler] []
+ GOTO L3
+ L4
+ LINENUMBER 310 L4
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager I I java/util/Iterator] []
+ ICONST_0
+ IRETURN
+ L8
+ LOCALVARIABLE inputhander Lcodechicken/nei/guihook/IContainerInputHandler; L5 L6 4
+ LOCALVARIABLE i$ Ljava/util/Iterator; L3 L4 3
+ LOCALVARIABLE this Lcodechicken/nei/guihook/GuiContainerManager; L0 L8 0
+ LOCALVARIABLE keyID I L0 L8 1
+ LOCALVARIABLE keyChar C L0 L8 2
+ MAXSTACK = 4
+ MAXLOCALS = 5
+
+ // access flags 0x1
+ public firstKeyTyped(CI)Z
+ L0
+ LINENUMBER 314 L0
+ GETSTATIC codechicken/nei/guihook/GuiContainerManager.inputHandlers : Ljava/util/LinkedList;
+ INVOKEVIRTUAL java/util/LinkedList.iterator ()Ljava/util/Iterator;
+ ASTORE 3
+ L1
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager I I java/util/Iterator] []
+ ALOAD 3
+ INVOKEINTERFACE java/util/Iterator.hasNext ()Z
+ IFEQ L2
+ ALOAD 3
+ INVOKEINTERFACE java/util/Iterator.next ()Ljava/lang/Object;
+ CHECKCAST codechicken/nei/guihook/IContainerInputHandler
+ ASTORE 4
+ L3
+ LINENUMBER 315 L3
+ ALOAD 4
+ ALOAD 0
+ GETFIELD codechicken/nei/guihook/GuiContainerManager.window : Lnet/minecraft/client/gui/inventory/GuiContainer;
+ ILOAD 1
+ ILOAD 2
+ INVOKEINTERFACE codechicken/nei/guihook/IContainerInputHandler.onKeyTyped (Lnet/minecraft/client/gui/inventory/GuiContainer;CI)V
+ L4
+ GOTO L1
+ L2
+ LINENUMBER 317 L2
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager I I java/util/Iterator] []
+ GETSTATIC codechicken/nei/guihook/GuiContainerManager.inputHandlers : Ljava/util/LinkedList;
+ INVOKEVIRTUAL java/util/LinkedList.iterator ()Ljava/util/Iterator;
+ ASTORE 3
+ L5
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager I I java/util/Iterator] []
+ ALOAD 3
+ INVOKEINTERFACE java/util/Iterator.hasNext ()Z
+ IFEQ L6
+ ALOAD 3
+ INVOKEINTERFACE java/util/Iterator.next ()Ljava/lang/Object;
+ CHECKCAST codechicken/nei/guihook/IContainerInputHandler
+ ASTORE 4
+ L7
+ LINENUMBER 318 L7
+ ALOAD 4
+ ALOAD 0
+ GETFIELD codechicken/nei/guihook/GuiContainerManager.window : Lnet/minecraft/client/gui/inventory/GuiContainer;
+ ILOAD 1
+ ILOAD 2
+ INVOKEINTERFACE codechicken/nei/guihook/IContainerInputHandler.keyTyped (Lnet/minecraft/client/gui/inventory/GuiContainer;CI)Z
+ IFEQ L8
+ L9
+ LINENUMBER 319 L9
+ ICONST_1
+ IRETURN
+ L8
+ LINENUMBER 318 L8
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager I I java/util/Iterator codechicken/nei/guihook/IContainerInputHandler] []
+ GOTO L5
+ L6
+ LINENUMBER 321 L6
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager I I java/util/Iterator] []
+ ICONST_0
+ IRETURN
+ L10
+ LOCALVARIABLE inputhander Lcodechicken/nei/guihook/IContainerInputHandler; L3 L4 4
+ LOCALVARIABLE i$ Ljava/util/Iterator; L1 L2 3
+ LOCALVARIABLE inputhander Lcodechicken/nei/guihook/IContainerInputHandler; L7 L8 4
+ LOCALVARIABLE i$ Ljava/util/Iterator; L5 L6 3
+ LOCALVARIABLE this Lcodechicken/nei/guihook/GuiContainerManager; L0 L10 0
+ LOCALVARIABLE keyChar C L0 L10 1
+ LOCALVARIABLE keyID I L0 L10 2
+ MAXSTACK = 4
+ MAXLOCALS = 5
+
+ // access flags 0x1
+ public mouseClicked(III)Z
+ L0
+ LINENUMBER 325 L0
+ GETSTATIC codechicken/nei/guihook/GuiContainerManager.inputHandlers : Ljava/util/LinkedList;
+ INVOKEVIRTUAL java/util/LinkedList.iterator ()Ljava/util/Iterator;
+ ASTORE 4
+ L1
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager I I I java/util/Iterator] []
+ ALOAD 4
+ INVOKEINTERFACE java/util/Iterator.hasNext ()Z
+ IFEQ L2
+ ALOAD 4
+ INVOKEINTERFACE java/util/Iterator.next ()Ljava/lang/Object;
+ CHECKCAST codechicken/nei/guihook/IContainerInputHandler
+ ASTORE 5
+ L3
+ LINENUMBER 326 L3
+ ALOAD 5
+ ALOAD 0
+ GETFIELD codechicken/nei/guihook/GuiContainerManager.window : Lnet/minecraft/client/gui/inventory/GuiContainer;
+ ILOAD 1
+ ILOAD 2
+ ILOAD 3
+ INVOKEINTERFACE codechicken/nei/guihook/IContainerInputHandler.onMouseClicked (Lnet/minecraft/client/gui/inventory/GuiContainer;III)V
+ L4
+ GOTO L1
+ L2
+ LINENUMBER 328 L2
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager I I I java/util/Iterator] []
+ GETSTATIC codechicken/nei/guihook/GuiContainerManager.inputHandlers : Ljava/util/LinkedList;
+ INVOKEVIRTUAL java/util/LinkedList.iterator ()Ljava/util/Iterator;
+ ASTORE 4
+ L5
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager I I I java/util/Iterator] []
+ ALOAD 4
+ INVOKEINTERFACE java/util/Iterator.hasNext ()Z
+ IFEQ L6
+ ALOAD 4
+ INVOKEINTERFACE java/util/Iterator.next ()Ljava/lang/Object;
+ CHECKCAST codechicken/nei/guihook/IContainerInputHandler
+ ASTORE 5
+ L7
+ LINENUMBER 329 L7
+ ALOAD 5
+ ALOAD 0
+ GETFIELD codechicken/nei/guihook/GuiContainerManager.window : Lnet/minecraft/client/gui/inventory/GuiContainer;
+ ILOAD 1
+ ILOAD 2
+ ILOAD 3
+ INVOKEINTERFACE codechicken/nei/guihook/IContainerInputHandler.mouseClicked (Lnet/minecraft/client/gui/inventory/GuiContainer;III)Z
+ IFEQ L8
+ L9
+ LINENUMBER 330 L9
+ ALOAD 0
+ DUP
+ GETFIELD codechicken/nei/guihook/GuiContainerManager.clickHandled : I
+ ICONST_1
+ ILOAD 3
+ ISHL
+ IOR
+ PUTFIELD codechicken/nei/guihook/GuiContainerManager.clickHandled : I
+ L10
+ LINENUMBER 331 L10
+ ICONST_1
+ IRETURN
+ L8
+ LINENUMBER 329 L8
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager I I I java/util/Iterator codechicken/nei/guihook/IContainerInputHandler] []
+ GOTO L5
+ L6
+ LINENUMBER 334 L6
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager I I I java/util/Iterator] []
+ ICONST_0
+ IRETURN
+ L11
+ LOCALVARIABLE inputhander Lcodechicken/nei/guihook/IContainerInputHandler; L3 L4 5
+ LOCALVARIABLE i$ Ljava/util/Iterator; L1 L2 4
+ LOCALVARIABLE inputhander Lcodechicken/nei/guihook/IContainerInputHandler; L7 L8 5
+ LOCALVARIABLE i$ Ljava/util/Iterator; L5 L6 4
+ LOCALVARIABLE this Lcodechicken/nei/guihook/GuiContainerManager; L0 L11 0
+ LOCALVARIABLE mousex I L0 L11 1
+ LOCALVARIABLE mousey I L0 L11 2
+ LOCALVARIABLE button I L0 L11 3
+ MAXSTACK = 5
+ MAXLOCALS = 6
+
+ // access flags 0x1
+ public mouseScrolled(I)V
+ L0
+ LINENUMBER 338 L0
+ INVOKESTATIC codechicken/lib/gui/GuiDraw.getMousePosition ()Ljava/awt/Point;
+ ASTORE 2
+ L1
+ LINENUMBER 340 L1
+ GETSTATIC codechicken/nei/guihook/GuiContainerManager.inputHandlers : Ljava/util/LinkedList;
+ INVOKEVIRTUAL java/util/LinkedList.iterator ()Ljava/util/Iterator;
+ ASTORE 3
+ L2
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager I java/awt/Point java/util/Iterator] []
+ ALOAD 3
+ INVOKEINTERFACE java/util/Iterator.hasNext ()Z
+ IFEQ L3
+ ALOAD 3
+ INVOKEINTERFACE java/util/Iterator.next ()Ljava/lang/Object;
+ CHECKCAST codechicken/nei/guihook/IContainerInputHandler
+ ASTORE 4
+ L4
+ LINENUMBER 341 L4
+ ALOAD 4
+ ALOAD 0
+ GETFIELD codechicken/nei/guihook/GuiContainerManager.window : Lnet/minecraft/client/gui/inventory/GuiContainer;
+ ALOAD 2
+ GETFIELD java/awt/Point.x : I
+ ALOAD 2
+ GETFIELD java/awt/Point.y : I
+ ILOAD 1
+ INVOKEINTERFACE codechicken/nei/guihook/IContainerInputHandler.onMouseScrolled (Lnet/minecraft/client/gui/inventory/GuiContainer;III)V
+ L5
+ GOTO L2
+ L3
+ LINENUMBER 343 L3
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager I java/awt/Point java/util/Iterator] []
+ GETSTATIC codechicken/nei/guihook/GuiContainerManager.inputHandlers : Ljava/util/LinkedList;
+ INVOKEVIRTUAL java/util/LinkedList.iterator ()Ljava/util/Iterator;
+ ASTORE 3
+ L6
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager I java/awt/Point java/util/Iterator] []
+ ALOAD 3
+ INVOKEINTERFACE java/util/Iterator.hasNext ()Z
+ IFEQ L7
+ ALOAD 3
+ INVOKEINTERFACE java/util/Iterator.next ()Ljava/lang/Object;
+ CHECKCAST codechicken/nei/guihook/IContainerInputHandler
+ ASTORE 4
+ L8
+ LINENUMBER 344 L8
+ ALOAD 4
+ ALOAD 0
+ GETFIELD codechicken/nei/guihook/GuiContainerManager.window : Lnet/minecraft/client/gui/inventory/GuiContainer;
+ ALOAD 2
+ GETFIELD java/awt/Point.x : I
+ ALOAD 2
+ GETFIELD java/awt/Point.y : I
+ ILOAD 1
+ INVOKEINTERFACE codechicken/nei/guihook/IContainerInputHandler.mouseScrolled (Lnet/minecraft/client/gui/inventory/GuiContainer;III)Z
+ IFEQ L9
+ L10
+ LINENUMBER 345 L10
+ RETURN
+ L9
+ LINENUMBER 344 L9
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager I java/awt/Point java/util/Iterator codechicken/nei/guihook/IContainerInputHandler] []
+ GOTO L6
+ L7
+ LINENUMBER 347 L7
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager I java/awt/Point java/util/Iterator] []
+ ALOAD 0
+ GETFIELD codechicken/nei/guihook/GuiContainerManager.window : Lnet/minecraft/client/gui/inventory/GuiContainer;
+ INSTANCEOF codechicken/nei/guihook/IGuiHandleMouseWheel
+ IFEQ L11
+ L12
+ LINENUMBER 348 L12
+ ALOAD 0
+ GETFIELD codechicken/nei/guihook/GuiContainerManager.window : Lnet/minecraft/client/gui/inventory/GuiContainer;
+ CHECKCAST codechicken/nei/guihook/IGuiHandleMouseWheel
+ ILOAD 1
+ INVOKEINTERFACE codechicken/nei/guihook/IGuiHandleMouseWheel.mouseScrolled (I)V
+ L11
+ LINENUMBER 349 L11
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager I java/awt/Point java/util/Iterator] []
+ RETURN
+ L13
+ LOCALVARIABLE inputHandler Lcodechicken/nei/guihook/IContainerInputHandler; L4 L5 4
+ LOCALVARIABLE i$ Ljava/util/Iterator; L2 L3 3
+ LOCALVARIABLE inputHandler Lcodechicken/nei/guihook/IContainerInputHandler; L8 L9 4
+ LOCALVARIABLE i$ Ljava/util/Iterator; L6 L7 3
+ LOCALVARIABLE this Lcodechicken/nei/guihook/GuiContainerManager; L0 L13 0
+ LOCALVARIABLE scrolled I L0 L13 1
+ LOCALVARIABLE mousepos Ljava/awt/Point; L1 L13 2
+ MAXSTACK = 5
+ MAXLOCALS = 5
+
+ // access flags 0x1
+ public overrideMouseUp(III)Z
+ L0
+ LINENUMBER 355 L0
+ ILOAD 3
+ IFLT L1
+ ALOAD 0
+ GETFIELD codechicken/nei/guihook/GuiContainerManager.clickHandled : I
+ ICONST_1
+ ILOAD 3
+ ISHL
+ IAND
+ IFEQ L1
+ L2
+ LINENUMBER 356 L2
+ ALOAD 0
+ DUP
+ GETFIELD codechicken/nei/guihook/GuiContainerManager.clickHandled : I
+ ICONST_1
+ ILOAD 3
+ ISHL
+ ICONST_M1
+ IXOR
+ IAND
+ PUTFIELD codechicken/nei/guihook/GuiContainerManager.clickHandled : I
+ L3
+ LINENUMBER 357 L3
+ ALOAD 0
+ ILOAD 1
+ ILOAD 2
+ ILOAD 3
+ INVOKEVIRTUAL codechicken/nei/guihook/GuiContainerManager.mouseUp (III)V
+ L4
+ LINENUMBER 358 L4
+ ICONST_1
+ IRETURN
+ L1
+ LINENUMBER 360 L1
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager I I I] []
+ ICONST_0
+ IRETURN
+ L5
+ LOCALVARIABLE this Lcodechicken/nei/guihook/GuiContainerManager; L0 L5 0
+ LOCALVARIABLE mousex I L0 L5 1
+ LOCALVARIABLE mousey I L0 L5 2
+ LOCALVARIABLE button I L0 L5 3
+ MAXSTACK = 4
+ MAXLOCALS = 4
+
+ // access flags 0x1
+ public mouseUp(III)V
+ L0
+ LINENUMBER 364 L0
+ GETSTATIC codechicken/nei/guihook/GuiContainerManager.inputHandlers : Ljava/util/LinkedList;
+ INVOKEVIRTUAL java/util/LinkedList.iterator ()Ljava/util/Iterator;
+ ASTORE 4
+ L1
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager I I I java/util/Iterator] []
+ ALOAD 4
+ INVOKEINTERFACE java/util/Iterator.hasNext ()Z
+ IFEQ L2
+ ALOAD 4
+ INVOKEINTERFACE java/util/Iterator.next ()Ljava/lang/Object;
+ CHECKCAST codechicken/nei/guihook/IContainerInputHandler
+ ASTORE 5
+ L3
+ LINENUMBER 365 L3
+ ALOAD 5
+ ALOAD 0
+ GETFIELD codechicken/nei/guihook/GuiContainerManager.window : Lnet/minecraft/client/gui/inventory/GuiContainer;
+ ILOAD 1
+ ILOAD 2
+ ILOAD 3
+ INVOKEINTERFACE codechicken/nei/guihook/IContainerInputHandler.onMouseUp (Lnet/minecraft/client/gui/inventory/GuiContainer;III)V
+ L4
+ GOTO L1
+ L2
+ LINENUMBER 366 L2
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager I I I java/util/Iterator] []
+ RETURN
+ L5
+ LOCALVARIABLE inputhander Lcodechicken/nei/guihook/IContainerInputHandler; L3 L4 5
+ LOCALVARIABLE i$ Ljava/util/Iterator; L1 L2 4
+ LOCALVARIABLE this Lcodechicken/nei/guihook/GuiContainerManager; L0 L5 0
+ LOCALVARIABLE mousex I L0 L5 1
+ LOCALVARIABLE mousey I L0 L5 2
+ LOCALVARIABLE button I L0 L5 3
+ MAXSTACK = 5
+ MAXLOCALS = 6
+
+ // access flags 0x1
+ public mouseDragged(IIIJ)V
+ L0
+ LINENUMBER 372 L0
+ GETSTATIC codechicken/nei/guihook/GuiContainerManager.inputHandlers : Ljava/util/LinkedList;
+ INVOKEVIRTUAL java/util/LinkedList.iterator ()Ljava/util/Iterator;
+ ASTORE 6
+ L1
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager I I I J java/util/Iterator] []
+ ALOAD 6
+ INVOKEINTERFACE java/util/Iterator.hasNext ()Z
+ IFEQ L2
+ ALOAD 6
+ INVOKEINTERFACE java/util/Iterator.next ()Ljava/lang/Object;
+ CHECKCAST codechicken/nei/guihook/IContainerInputHandler
+ ASTORE 7
+ L3
+ LINENUMBER 373 L3
+ ALOAD 7
+ ALOAD 0
+ GETFIELD codechicken/nei/guihook/GuiContainerManager.window : Lnet/minecraft/client/gui/inventory/GuiContainer;
+ ILOAD 1
+ ILOAD 2
+ ILOAD 3
+ LLOAD 4
+ INVOKEINTERFACE codechicken/nei/guihook/IContainerInputHandler.onMouseDragged (Lnet/minecraft/client/gui/inventory/GuiContainer;IIIJ)V
+ L4
+ GOTO L1
+ L2
+ LINENUMBER 374 L2
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager I I I J java/util/Iterator] []
+ RETURN
+ L5
+ LOCALVARIABLE inputhander Lcodechicken/nei/guihook/IContainerInputHandler; L3 L4 7
+ LOCALVARIABLE i$ Ljava/util/Iterator; L1 L2 6
+ LOCALVARIABLE this Lcodechicken/nei/guihook/GuiContainerManager; L0 L5 0
+ LOCALVARIABLE mousex I L0 L5 1
+ LOCALVARIABLE mousey I L0 L5 2
+ LOCALVARIABLE button I L0 L5 3
+ LOCALVARIABLE heldTime J L0 L5 4
+ MAXSTACK = 7
+ MAXLOCALS = 8
+
+ // access flags 0x1
+ public preDraw()V
+ L0
+ LINENUMBER 380 L0
+ GETSTATIC codechicken/nei/guihook/GuiContainerManager.drawHandlers : Ljava/util/LinkedList;
+ INVOKEVIRTUAL java/util/LinkedList.iterator ()Ljava/util/Iterator;
+ ASTORE 1
+ L1
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager java/util/Iterator] []
+ ALOAD 1
+ INVOKEINTERFACE java/util/Iterator.hasNext ()Z
+ IFEQ L2
+ ALOAD 1
+ INVOKEINTERFACE java/util/Iterator.next ()Ljava/lang/Object;
+ CHECKCAST codechicken/nei/guihook/IContainerDrawHandler
+ ASTORE 2
+ L3
+ LINENUMBER 381 L3
+ ALOAD 2
+ ALOAD 0
+ GETFIELD codechicken/nei/guihook/GuiContainerManager.window : Lnet/minecraft/client/gui/inventory/GuiContainer;
+ INVOKEINTERFACE codechicken/nei/guihook/IContainerDrawHandler.onPreDraw (Lnet/minecraft/client/gui/inventory/GuiContainer;)V
+ L4
+ GOTO L1
+ L2
+ LINENUMBER 382 L2
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager java/util/Iterator] []
+ RETURN
+ L5
+ LOCALVARIABLE drawHandler Lcodechicken/nei/guihook/IContainerDrawHandler; L3 L4 2
+ LOCALVARIABLE i$ Ljava/util/Iterator; L1 L2 1
+ LOCALVARIABLE this Lcodechicken/nei/guihook/GuiContainerManager; L0 L5 0
+ MAXSTACK = 2
+ MAXLOCALS = 3
+
+ // access flags 0x1
+ public renderObjects(II)V
+ L0
+ LINENUMBER 385 L0
+ ALOAD 0
+ GETFIELD codechicken/nei/guihook/GuiContainerManager.window : Lnet/minecraft/client/gui/inventory/GuiContainer;
+ GETFIELD net/minecraft/client/gui/inventory/GuiContainer.guiLeft : I
+ INEG
+ I2F
+ ALOAD 0
+ GETFIELD codechicken/nei/guihook/GuiContainerManager.window : Lnet/minecraft/client/gui/inventory/GuiContainer;
+ GETFIELD net/minecraft/client/gui/inventory/GuiContainer.guiTop : I
+ INEG
+ I2F
+ LDC 200.0
+ INVOKESTATIC org/lwjgl/opengl/GL11.glTranslatef (FFF)V
+ L1
+ LINENUMBER 386 L1
+ GETSTATIC codechicken/nei/guihook/GuiContainerManager.drawHandlers : Ljava/util/LinkedList;
+ INVOKEVIRTUAL java/util/LinkedList.iterator ()Ljava/util/Iterator;
+ ASTORE 3
+ L2
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager I I java/util/Iterator] []
+ ALOAD 3
+ INVOKEINTERFACE java/util/Iterator.hasNext ()Z
+ IFEQ L3
+ ALOAD 3
+ INVOKEINTERFACE java/util/Iterator.next ()Ljava/lang/Object;
+ CHECKCAST codechicken/nei/guihook/IContainerDrawHandler
+ ASTORE 4
+ L4
+ LINENUMBER 387 L4
+ ALOAD 4
+ ALOAD 0
+ GETFIELD codechicken/nei/guihook/GuiContainerManager.window : Lnet/minecraft/client/gui/inventory/GuiContainer;
+ ILOAD 1
+ ILOAD 2
+ INVOKEINTERFACE codechicken/nei/guihook/IContainerDrawHandler.renderObjects (Lnet/minecraft/client/gui/inventory/GuiContainer;II)V
+ L5
+ GOTO L2
+ L3
+ LINENUMBER 389 L3
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager I I java/util/Iterator] []
+ GETSTATIC codechicken/nei/guihook/GuiContainerManager.drawHandlers : Ljava/util/LinkedList;
+ INVOKEVIRTUAL java/util/LinkedList.iterator ()Ljava/util/Iterator;
+ ASTORE 3
+ L6
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager I I java/util/Iterator] []
+ ALOAD 3
+ INVOKEINTERFACE java/util/Iterator.hasNext ()Z
+ IFEQ L7
+ ALOAD 3
+ INVOKEINTERFACE java/util/Iterator.next ()Ljava/lang/Object;
+ CHECKCAST codechicken/nei/guihook/IContainerDrawHandler
+ ASTORE 4
+ L8
+ LINENUMBER 390 L8
+ ALOAD 4
+ ALOAD 0
+ GETFIELD codechicken/nei/guihook/GuiContainerManager.window : Lnet/minecraft/client/gui/inventory/GuiContainer;
+ ILOAD 1
+ ILOAD 2
+ INVOKEINTERFACE codechicken/nei/guihook/IContainerDrawHandler.postRenderObjects (Lnet/minecraft/client/gui/inventory/GuiContainer;II)V
+ L9
+ GOTO L6
+ L7
+ LINENUMBER 391 L7
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager I I java/util/Iterator] []
+ ALOAD 0
+ GETFIELD codechicken/nei/guihook/GuiContainerManager.window : Lnet/minecraft/client/gui/inventory/GuiContainer;
+ GETFIELD net/minecraft/client/gui/inventory/GuiContainer.guiLeft : I
+ I2F
+ ALOAD 0
+ GETFIELD codechicken/nei/guihook/GuiContainerManager.window : Lnet/minecraft/client/gui/inventory/GuiContainer;
+ GETFIELD net/minecraft/client/gui/inventory/GuiContainer.guiTop : I
+ I2F
+ LDC -200.0
+ INVOKESTATIC org/lwjgl/opengl/GL11.glTranslatef (FFF)V
+ L10
+ LINENUMBER 392 L10
+ RETURN
+ L11
+ LOCALVARIABLE drawHandler Lcodechicken/nei/guihook/IContainerDrawHandler; L4 L5 4
+ LOCALVARIABLE i$ Ljava/util/Iterator; L2 L3 3
+ LOCALVARIABLE drawHandler Lcodechicken/nei/guihook/IContainerDrawHandler; L8 L9 4
+ LOCALVARIABLE i$ Ljava/util/Iterator; L6 L7 3
+ LOCALVARIABLE this Lcodechicken/nei/guihook/GuiContainerManager; L0 L11 0
+ LOCALVARIABLE mousex I L0 L11 1
+ LOCALVARIABLE mousey I L0 L11 2
+ MAXSTACK = 4
+ MAXLOCALS = 5
+
+ // access flags 0x1
+ public renderToolTips(II)V
+ L0
+ LINENUMBER 395 L0
+ NEW java/util/LinkedList
+ DUP
+ INVOKESPECIAL java/util/LinkedList. ()V
+ ASTORE 3
+ L1
+ LINENUMBER 396 L1
+ GETSTATIC codechicken/lib/gui/GuiDraw.fontRenderer : Lnet/minecraft/client/gui/FontRenderer;
+ ASTORE 4
+ L2
+ LINENUMBER 398 L2
+ ALOAD 0
+ GETFIELD codechicken/nei/guihook/GuiContainerManager.instanceTooltipHandlers : Ljava/util/List;
+ INVOKEINTERFACE java/util/List.iterator ()Ljava/util/Iterator;
+ ASTORE 5
+ L3
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager I I java/util/List net/minecraft/client/gui/FontRenderer java/util/Iterator] []
+ ALOAD 5
+ INVOKEINTERFACE java/util/Iterator.hasNext ()Z
+ IFEQ L4
+ ALOAD 5
+ INVOKEINTERFACE java/util/Iterator.next ()Ljava/lang/Object;
+ CHECKCAST codechicken/nei/guihook/IContainerTooltipHandler
+ ASTORE 6
+ L5
+ LINENUMBER 399 L5
+ ALOAD 6
+ ALOAD 0
+ GETFIELD codechicken/nei/guihook/GuiContainerManager.window : Lnet/minecraft/client/gui/inventory/GuiContainer;
+ ILOAD 1
+ ILOAD 2
+ ALOAD 3
+ INVOKEINTERFACE codechicken/nei/guihook/IContainerTooltipHandler.handleTooltip (Lnet/minecraft/client/gui/inventory/GuiContainer;IILjava/util/List;)Ljava/util/List;
+ ASTORE 3
+ L6
+ GOTO L3
+ L4
+ LINENUMBER 401 L4
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager I I java/util/List net/minecraft/client/gui/FontRenderer java/util/Iterator] []
+ ALOAD 3
+ INVOKEINTERFACE java/util/List.isEmpty ()Z
+ IFEQ L7
+ ALOAD 0
+ GETFIELD codechicken/nei/guihook/GuiContainerManager.window : Lnet/minecraft/client/gui/inventory/GuiContainer;
+ INVOKESTATIC codechicken/nei/guihook/GuiContainerManager.shouldShowTooltip (Lnet/minecraft/client/gui/inventory/GuiContainer;)Z
+ IFEQ L7
+ L8
+ LINENUMBER 402 L8
+ ALOAD 0
+ GETFIELD codechicken/nei/guihook/GuiContainerManager.window : Lnet/minecraft/client/gui/inventory/GuiContainer;
+ INVOKESTATIC codechicken/nei/guihook/GuiContainerManager.getStackMouseOver (Lnet/minecraft/client/gui/inventory/GuiContainer;)Lnet/minecraft/item/ItemStack;
+ ASTORE 5
+ L9
+ LINENUMBER 403 L9
+ ALOAD 5
+ INVOKESTATIC codechicken/nei/guihook/GuiContainerManager.getFontRenderer (Lnet/minecraft/item/ItemStack;)Lnet/minecraft/client/gui/FontRenderer;
+ ASTORE 4
+ L10
+ LINENUMBER 404 L10
+ ALOAD 5
+ IFNULL L11
+ L12
+ LINENUMBER 405 L12
+ ALOAD 5
+ ALOAD 0
+ GETFIELD codechicken/nei/guihook/GuiContainerManager.window : Lnet/minecraft/client/gui/inventory/GuiContainer;
+ ICONST_1
+ INVOKESTATIC codechicken/nei/guihook/GuiContainerManager.itemDisplayNameMultiline (Lnet/minecraft/item/ItemStack;Lnet/minecraft/client/gui/inventory/GuiContainer;Z)Ljava/util/List;
+ ASTORE 3
+ L11
+ LINENUMBER 407 L11
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager I I java/util/List net/minecraft/client/gui/FontRenderer net/minecraft/item/ItemStack] []
+ ALOAD 0
+ GETFIELD codechicken/nei/guihook/GuiContainerManager.instanceTooltipHandlers : Ljava/util/List;
+ INVOKEINTERFACE java/util/List.iterator ()Ljava/util/Iterator;
+ ASTORE 6
+ L13
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager I I java/util/List net/minecraft/client/gui/FontRenderer net/minecraft/item/ItemStack java/util/Iterator] []
+ ALOAD 6
+ INVOKEINTERFACE java/util/Iterator.hasNext ()Z
+ IFEQ L7
+ ALOAD 6
+ INVOKEINTERFACE java/util/Iterator.next ()Ljava/lang/Object;
+ CHECKCAST codechicken/nei/guihook/IContainerTooltipHandler
+ ASTORE 7
+ L14
+ LINENUMBER 408 L14
+ ALOAD 7
+ ALOAD 0
+ GETFIELD codechicken/nei/guihook/GuiContainerManager.window : Lnet/minecraft/client/gui/inventory/GuiContainer;
+ ALOAD 5
+ ILOAD 1
+ ILOAD 2
+ ALOAD 3
+ INVOKEINTERFACE codechicken/nei/guihook/IContainerTooltipHandler.handleItemTooltip (Lnet/minecraft/client/gui/inventory/GuiContainer;Lnet/minecraft/item/ItemStack;IILjava/util/List;)Ljava/util/List;
+ ASTORE 3
+ L15
+ GOTO L13
+ L7
+ LINENUMBER 411 L7
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager I I java/util/List net/minecraft/client/gui/FontRenderer java/lang/Object] []
+ ALOAD 3
+ INVOKEINTERFACE java/util/List.size ()I
+ IFLE L16
+ L17
+ LINENUMBER 412 L17
+ ALOAD 3
+ ICONST_0
+ NEW java/lang/StringBuilder
+ DUP
+ INVOKESPECIAL java/lang/StringBuilder. ()V
+ ALOAD 3
+ ICONST_0
+ INVOKEINTERFACE java/util/List.get (I)Ljava/lang/Object;
+ CHECKCAST java/lang/String
+ INVOKEVIRTUAL java/lang/StringBuilder.append (Ljava/lang/String;)Ljava/lang/StringBuilder;
+ LDC "\u00a7h"
+ INVOKEVIRTUAL java/lang/StringBuilder.append (Ljava/lang/String;)Ljava/lang/StringBuilder;
+ INVOKEVIRTUAL java/lang/StringBuilder.toString ()Ljava/lang/String;
+ INVOKEINTERFACE java/util/List.set (ILjava/lang/Object;)Ljava/lang/Object;
+ POP
+ L16
+ LINENUMBER 414 L16
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager I I java/util/List net/minecraft/client/gui/FontRenderer java/lang/Object] []
+ ALOAD 4
+ ILOAD 1
+ BIPUSH 12
+ IADD
+ ILOAD 2
+ BIPUSH 12
+ ISUB
+ ALOAD 3
+ INVOKESTATIC codechicken/lib/gui/GuiDraw.drawMultilineTip (Lnet/minecraft/client/gui/FontRenderer;IILjava/util/List;)V
+ L18
+ LINENUMBER 415 L18
+ RETURN
+ L19
+ LOCALVARIABLE handler Lcodechicken/nei/guihook/IContainerTooltipHandler; L5 L6 6
+ LOCALVARIABLE i$ Ljava/util/Iterator; L3 L4 5
+ LOCALVARIABLE handler Lcodechicken/nei/guihook/IContainerTooltipHandler; L14 L15 7
+ LOCALVARIABLE i$ Ljava/util/Iterator; L13 L7 6
+ LOCALVARIABLE stack Lnet/minecraft/item/ItemStack; L9 L7 5
+ LOCALVARIABLE this Lcodechicken/nei/guihook/GuiContainerManager; L0 L19 0
+ LOCALVARIABLE mousex I L0 L19 1
+ LOCALVARIABLE mousey I L0 L19 2
+ LOCALVARIABLE tooltip Ljava/util/List; L1 L19 3
+ // signature Ljava/util/List;
+ // declaration: java.util.List
+ LOCALVARIABLE font Lnet/minecraft/client/gui/FontRenderer; L2 L19 4
+ MAXSTACK = 6
+ MAXLOCALS = 8
+
+ // access flags 0x9
+ public static shouldShowTooltip(Lnet/minecraft/client/gui/inventory/GuiContainer;)Z
+ L0
+ LINENUMBER 418 L0
+ GETSTATIC codechicken/nei/guihook/GuiContainerManager.objectHandlers : Ljava/util/LinkedList;
+ INVOKEVIRTUAL java/util/LinkedList.iterator ()Ljava/util/Iterator;
+ ASTORE 1
+ L1
+ FRAME FULL [net/minecraft/client/gui/inventory/GuiContainer java/util/Iterator] []
+ ALOAD 1
+ INVOKEINTERFACE java/util/Iterator.hasNext ()Z
+ IFEQ L2
+ ALOAD 1
+ INVOKEINTERFACE java/util/Iterator.next ()Ljava/lang/Object;
+ CHECKCAST codechicken/nei/guihook/IContainerObjectHandler
+ ASTORE 2
+ L3
+ LINENUMBER 419 L3
+ ALOAD 2
+ ALOAD 0
+ INVOKEINTERFACE codechicken/nei/guihook/IContainerObjectHandler.shouldShowTooltip (Lnet/minecraft/client/gui/inventory/GuiContainer;)Z
+ IFNE L4
+ L5
+ LINENUMBER 420 L5
+ ICONST_0
+ IRETURN
+ L4
+ LINENUMBER 419 L4
+ FRAME FULL [net/minecraft/client/gui/inventory/GuiContainer java/util/Iterator codechicken/nei/guihook/IContainerObjectHandler] []
+ GOTO L1
+ L2
+ LINENUMBER 422 L2
+ FRAME FULL [net/minecraft/client/gui/inventory/GuiContainer java/util/Iterator] []
+ ALOAD 0
+ GETFIELD net/minecraft/client/gui/inventory/GuiContainer.mc : Lnet/minecraft/client/Minecraft;
+ GETFIELD net/minecraft/client/Minecraft.thePlayer : Lnet/minecraft/client/entity/EntityClientPlayerMP;
+ GETFIELD net/minecraft/client/entity/EntityClientPlayerMP.inventory : Lnet/minecraft/entity/player/InventoryPlayer;
+ INVOKEVIRTUAL net/minecraft/entity/player/InventoryPlayer.getItemStack ()Lnet/minecraft/item/ItemStack;
+ IFNONNULL L6
+ ICONST_1
+ GOTO L7
+ L6
+ FRAME FULL [net/minecraft/client/gui/inventory/GuiContainer java/util/Iterator] []
+ ICONST_0
+ L7
+ FRAME FULL [net/minecraft/client/gui/inventory/GuiContainer java/util/Iterator] [I]
+ IRETURN
+ L8
+ LOCALVARIABLE handler Lcodechicken/nei/guihook/IContainerObjectHandler; L3 L4 2
+ LOCALVARIABLE i$ Ljava/util/Iterator; L1 L2 1
+ LOCALVARIABLE window Lnet/minecraft/client/gui/inventory/GuiContainer; L0 L8 0
+ MAXSTACK = 2
+ MAXLOCALS = 3
+
+ // access flags 0x1
+ public renderSlotUnderlay(Lnet/minecraft/inventory/Slot;)V
+ L0
+ LINENUMBER 426 L0
+ GETSTATIC codechicken/nei/guihook/GuiContainerManager.drawHandlers : Ljava/util/LinkedList;
+ INVOKEVIRTUAL java/util/LinkedList.iterator ()Ljava/util/Iterator;
+ ASTORE 2
+ L1
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager net/minecraft/inventory/Slot java/util/Iterator] []
+ ALOAD 2
+ INVOKEINTERFACE java/util/Iterator.hasNext ()Z
+ IFEQ L2
+ ALOAD 2
+ INVOKEINTERFACE java/util/Iterator.next ()Ljava/lang/Object;
+ CHECKCAST codechicken/nei/guihook/IContainerDrawHandler
+ ASTORE 3
+ L3
+ LINENUMBER 427 L3
+ ALOAD 3
+ ALOAD 0
+ GETFIELD codechicken/nei/guihook/GuiContainerManager.window : Lnet/minecraft/client/gui/inventory/GuiContainer;
+ ALOAD 1
+ INVOKEINTERFACE codechicken/nei/guihook/IContainerDrawHandler.renderSlotUnderlay (Lnet/minecraft/client/gui/inventory/GuiContainer;Lnet/minecraft/inventory/Slot;)V
+ L4
+ GOTO L1
+ L2
+ LINENUMBER 428 L2
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager net/minecraft/inventory/Slot java/util/Iterator] []
+ RETURN
+ L5
+ LOCALVARIABLE drawHandler Lcodechicken/nei/guihook/IContainerDrawHandler; L3 L4 3
+ LOCALVARIABLE i$ Ljava/util/Iterator; L1 L2 2
+ LOCALVARIABLE this Lcodechicken/nei/guihook/GuiContainerManager; L0 L5 0
+ LOCALVARIABLE slot Lnet/minecraft/inventory/Slot; L0 L5 1
+ MAXSTACK = 3
+ MAXLOCALS = 4
+
+ // access flags 0x1
+ public renderSlotOverlay(Lnet/minecraft/inventory/Slot;)V
+ L0
+ LINENUMBER 431 L0
+ GETSTATIC codechicken/nei/guihook/GuiContainerManager.drawHandlers : Ljava/util/LinkedList;
+ INVOKEVIRTUAL java/util/LinkedList.iterator ()Ljava/util/Iterator;
+ ASTORE 2
+ L1
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager net/minecraft/inventory/Slot java/util/Iterator] []
+ ALOAD 2
+ INVOKEINTERFACE java/util/Iterator.hasNext ()Z
+ IFEQ L2
+ ALOAD 2
+ INVOKEINTERFACE java/util/Iterator.next ()Ljava/lang/Object;
+ CHECKCAST codechicken/nei/guihook/IContainerDrawHandler
+ ASTORE 3
+ L3
+ LINENUMBER 432 L3
+ ALOAD 3
+ ALOAD 0
+ GETFIELD codechicken/nei/guihook/GuiContainerManager.window : Lnet/minecraft/client/gui/inventory/GuiContainer;
+ ALOAD 1
+ INVOKEINTERFACE codechicken/nei/guihook/IContainerDrawHandler.renderSlotOverlay (Lnet/minecraft/client/gui/inventory/GuiContainer;Lnet/minecraft/inventory/Slot;)V
+ L4
+ GOTO L1
+ L2
+ LINENUMBER 433 L2
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager net/minecraft/inventory/Slot java/util/Iterator] []
+ SIPUSH 3008
+ INVOKESTATIC org/lwjgl/opengl/GL11.glEnable (I)V
+ L5
+ LINENUMBER 434 L5
+ RETURN
+ L6
+ LOCALVARIABLE drawHandler Lcodechicken/nei/guihook/IContainerDrawHandler; L3 L4 3
+ LOCALVARIABLE i$ Ljava/util/Iterator; L1 L2 2
+ LOCALVARIABLE this Lcodechicken/nei/guihook/GuiContainerManager; L0 L6 0
+ LOCALVARIABLE slot Lnet/minecraft/inventory/Slot; L0 L6 1
+ MAXSTACK = 3
+ MAXLOCALS = 4
+
+ // access flags 0x1
+ public objectUnderMouse(II)Z
+ L0
+ LINENUMBER 440 L0
+ GETSTATIC codechicken/nei/guihook/GuiContainerManager.objectHandlers : Ljava/util/LinkedList;
+ INVOKEVIRTUAL java/util/LinkedList.iterator ()Ljava/util/Iterator;
+ ASTORE 3
+ L1
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager I I java/util/Iterator] []
+ ALOAD 3
+ INVOKEINTERFACE java/util/Iterator.hasNext ()Z
+ IFEQ L2
+ ALOAD 3
+ INVOKEINTERFACE java/util/Iterator.next ()Ljava/lang/Object;
+ CHECKCAST codechicken/nei/guihook/IContainerObjectHandler
+ ASTORE 4
+ L3
+ LINENUMBER 441 L3
+ ALOAD 4
+ ALOAD 0
+ GETFIELD codechicken/nei/guihook/GuiContainerManager.window : Lnet/minecraft/client/gui/inventory/GuiContainer;
+ ILOAD 1
+ ILOAD 2
+ INVOKEINTERFACE codechicken/nei/guihook/IContainerObjectHandler.objectUnderMouse (Lnet/minecraft/client/gui/inventory/GuiContainer;II)Z
+ IFEQ L4
+ L5
+ LINENUMBER 442 L5
+ ICONST_1
+ IRETURN
+ L4
+ LINENUMBER 441 L4
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager I I java/util/Iterator codechicken/nei/guihook/IContainerObjectHandler] []
+ GOTO L1
+ L2
+ LINENUMBER 444 L2
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager I I java/util/Iterator] []
+ ICONST_0
+ IRETURN
+ L6
+ LOCALVARIABLE objectHandler Lcodechicken/nei/guihook/IContainerObjectHandler; L3 L4 4
+ LOCALVARIABLE i$ Ljava/util/Iterator; L1 L2 3
+ LOCALVARIABLE this Lcodechicken/nei/guihook/GuiContainerManager; L0 L6 0
+ LOCALVARIABLE mousex I L0 L6 1
+ LOCALVARIABLE mousey I L0 L6 2
+ MAXSTACK = 4
+ MAXLOCALS = 5
+
+ // access flags 0x1
+ public handleMouseClick(Lnet/minecraft/inventory/Slot;III)V
+ L0
+ LINENUMBER 448 L0
+ GETSTATIC codechicken/nei/guihook/GuiContainerManager.slotClickHandlers : Ljava/util/LinkedList;
+ INVOKEVIRTUAL java/util/LinkedList.iterator ()Ljava/util/Iterator;
+ ASTORE 5
+ L1
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager net/minecraft/inventory/Slot I I I java/util/Iterator] []
+ ALOAD 5
+ INVOKEINTERFACE java/util/Iterator.hasNext ()Z
+ IFEQ L2
+ ALOAD 5
+ INVOKEINTERFACE java/util/Iterator.next ()Ljava/lang/Object;
+ CHECKCAST codechicken/nei/guihook/IContainerSlotClickHandler
+ ASTORE 6
+ L3
+ LINENUMBER 449 L3
+ ALOAD 6
+ ALOAD 0
+ GETFIELD codechicken/nei/guihook/GuiContainerManager.window : Lnet/minecraft/client/gui/inventory/GuiContainer;
+ ILOAD 2
+ ILOAD 3
+ ALOAD 1
+ ILOAD 4
+ INVOKEINTERFACE codechicken/nei/guihook/IContainerSlotClickHandler.beforeSlotClick (Lnet/minecraft/client/gui/inventory/GuiContainer;IILnet/minecraft/inventory/Slot;I)V
+ L4
+ GOTO L1
+ L2
+ LINENUMBER 451 L2
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager net/minecraft/inventory/Slot I I I java/util/Iterator] []
+ ICONST_0
+ ISTORE 5
+ L5
+ LINENUMBER 452 L5
+ GETSTATIC codechicken/nei/guihook/GuiContainerManager.slotClickHandlers : Ljava/util/LinkedList;
+ INVOKEVIRTUAL java/util/LinkedList.iterator ()Ljava/util/Iterator;
+ ASTORE 6
+ L6
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager net/minecraft/inventory/Slot I I I I java/util/Iterator] []
+ ALOAD 6
+ INVOKEINTERFACE java/util/Iterator.hasNext ()Z
+ IFEQ L7
+ ALOAD 6
+ INVOKEINTERFACE java/util/Iterator.next ()Ljava/lang/Object;
+ CHECKCAST codechicken/nei/guihook/IContainerSlotClickHandler
+ ASTORE 7
+ L8
+ LINENUMBER 453 L8
+ ALOAD 7
+ ALOAD 0
+ GETFIELD codechicken/nei/guihook/GuiContainerManager.window : Lnet/minecraft/client/gui/inventory/GuiContainer;
+ ILOAD 2
+ ILOAD 3
+ ALOAD 1
+ ILOAD 4
+ ILOAD 5
+ INVOKEINTERFACE codechicken/nei/guihook/IContainerSlotClickHandler.handleSlotClick (Lnet/minecraft/client/gui/inventory/GuiContainer;IILnet/minecraft/inventory/Slot;IZ)Z
+ ISTORE 5
+ L9
+ GOTO L6
+ L7
+ LINENUMBER 455 L7
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager net/minecraft/inventory/Slot I I I I java/util/Iterator] []
+ GETSTATIC codechicken/nei/guihook/GuiContainerManager.slotClickHandlers : Ljava/util/LinkedList;
+ INVOKEVIRTUAL java/util/LinkedList.iterator ()Ljava/util/Iterator;
+ ASTORE 6
+ L10
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager net/minecraft/inventory/Slot I I I I java/util/Iterator] []
+ ALOAD 6
+ INVOKEINTERFACE java/util/Iterator.hasNext ()Z
+ IFEQ L11
+ ALOAD 6
+ INVOKEINTERFACE java/util/Iterator.next ()Ljava/lang/Object;
+ CHECKCAST codechicken/nei/guihook/IContainerSlotClickHandler
+ ASTORE 7
+ L12
+ LINENUMBER 456 L12
+ ALOAD 7
+ ALOAD 0
+ GETFIELD codechicken/nei/guihook/GuiContainerManager.window : Lnet/minecraft/client/gui/inventory/GuiContainer;
+ ILOAD 2
+ ILOAD 3
+ ALOAD 1
+ ILOAD 4
+ INVOKEINTERFACE codechicken/nei/guihook/IContainerSlotClickHandler.afterSlotClick (Lnet/minecraft/client/gui/inventory/GuiContainer;IILnet/minecraft/inventory/Slot;I)V
+ L13
+ GOTO L10
+ L11
+ LINENUMBER 457 L11
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager net/minecraft/inventory/Slot I I I I java/util/Iterator] []
+ RETURN
+ L14
+ LOCALVARIABLE handler Lcodechicken/nei/guihook/IContainerSlotClickHandler; L3 L4 6
+ LOCALVARIABLE i$ Ljava/util/Iterator; L1 L2 5
+ LOCALVARIABLE handler Lcodechicken/nei/guihook/IContainerSlotClickHandler; L8 L9 7
+ LOCALVARIABLE i$ Ljava/util/Iterator; L6 L7 6
+ LOCALVARIABLE handler Lcodechicken/nei/guihook/IContainerSlotClickHandler; L12 L13 7
+ LOCALVARIABLE i$ Ljava/util/Iterator; L10 L11 6
+ LOCALVARIABLE this Lcodechicken/nei/guihook/GuiContainerManager; L0 L14 0
+ LOCALVARIABLE slot Lnet/minecraft/inventory/Slot; L0 L14 1
+ LOCALVARIABLE slotIndex I L0 L14 2
+ LOCALVARIABLE button I L0 L14 3
+ LOCALVARIABLE modifier I L0 L14 4
+ LOCALVARIABLE eventHandled Z L5 L14 5
+ MAXSTACK = 7
+ MAXLOCALS = 8
+
+ // access flags 0x1
+ public handleKeyboardInput()V
+ L0
+ LINENUMBER 462 L0
+ INVOKESTATIC org/lwjgl/input/Keyboard.getEventKey ()I
+ ISTORE 1
+ L1
+ LINENUMBER 463 L1
+ INVOKESTATIC org/lwjgl/input/Keyboard.getEventCharacter ()C
+ ISTORE 2
+ L2
+ LINENUMBER 464 L2
+ INVOKESTATIC org/lwjgl/input/Keyboard.getEventKeyState ()Z
+ IFNE L3
+ ILOAD 1
+ IFNE L4
+ ILOAD 2
+ INVOKESTATIC java/lang/Character.isDefined (C)Z
+ IFEQ L4
+ L3
+ LINENUMBER 465 L3
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager I I] []
+ ALOAD 0
+ ILOAD 2
+ ILOAD 1
+ INVOKEVIRTUAL codechicken/nei/guihook/GuiContainerManager.keyTyped (CI)V
+ L4
+ LINENUMBER 467 L4
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager I I] []
+ ALOAD 0
+ GETFIELD codechicken/nei/guihook/GuiContainerManager.window : Lnet/minecraft/client/gui/inventory/GuiContainer;
+ GETFIELD net/minecraft/client/gui/inventory/GuiContainer.mc : Lnet/minecraft/client/Minecraft;
+ INVOKEVIRTUAL net/minecraft/client/Minecraft.func_152348_aa ()V
+ L5
+ LINENUMBER 468 L5
+ RETURN
+ L6
+ LOCALVARIABLE this Lcodechicken/nei/guihook/GuiContainerManager; L0 L6 0
+ LOCALVARIABLE k I L1 L6 1
+ LOCALVARIABLE c C L2 L6 2
+ MAXSTACK = 3
+ MAXLOCALS = 3
+
+ // access flags 0x1
+ public keyTyped(CI)V
+ L0
+ LINENUMBER 472 L0
+ ALOAD 0
+ ILOAD 1
+ ILOAD 2
+ INVOKEVIRTUAL codechicken/nei/guihook/GuiContainerManager.firstKeyTyped (CI)Z
+ IFEQ L1
+ L2
+ LINENUMBER 473 L2
+ RETURN
+ L1
+ LINENUMBER 475 L1
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager I I] []
+ ALOAD 0
+ GETFIELD codechicken/nei/guihook/GuiContainerManager.window : Lnet/minecraft/client/gui/inventory/GuiContainer;
+ ILOAD 1
+ ILOAD 2
+ INVOKESTATIC codechicken/nei/guihook/GuiContainerManager.callKeyTyped (Lnet/minecraft/client/gui/inventory/GuiContainer;CI)V
+ L3
+ LINENUMBER 476 L3
+ RETURN
+ L4
+ LOCALVARIABLE this Lcodechicken/nei/guihook/GuiContainerManager; L0 L4 0
+ LOCALVARIABLE c C L0 L4 1
+ LOCALVARIABLE k I L0 L4 2
+ MAXSTACK = 3
+ MAXLOCALS = 3
+
+ // access flags 0x9
+ public static callKeyTyped(Lnet/minecraft/client/gui/inventory/GuiContainer;CI)V
+ ALOAD 0
+ ILOAD 1
+ ILOAD 2
+ INVOKEVIRTUAL net/minecraft/client/gui/inventory/GuiContainer.public_func_73869_a (CI)V
+ RETURN
+ MAXSTACK = 3
+ MAXLOCALS = 3
+
+ // access flags 0x1
+ public drawSlotItem(Lnet/minecraft/inventory/Slot;Lnet/minecraft/item/ItemStack;IILjava/lang/String;)V
+ L0
+ LINENUMBER 486 L0
+ ALOAD 0
+ GETFIELD codechicken/nei/guihook/GuiContainerManager.window : Lnet/minecraft/client/gui/inventory/GuiContainer;
+ INSTANCEOF codechicken/nei/guihook/IGuiSlotDraw
+ IFEQ L1
+ L2
+ LINENUMBER 487 L2
+ ALOAD 0
+ GETFIELD codechicken/nei/guihook/GuiContainerManager.window : Lnet/minecraft/client/gui/inventory/GuiContainer;
+ CHECKCAST codechicken/nei/guihook/IGuiSlotDraw
+ ALOAD 1
+ ALOAD 2
+ ILOAD 3
+ ILOAD 4
+ ALOAD 5
+ INVOKEINTERFACE codechicken/nei/guihook/IGuiSlotDraw.drawSlotItem (Lnet/minecraft/inventory/Slot;Lnet/minecraft/item/ItemStack;IILjava/lang/String;)V
+ GOTO L3
+ L1
+ LINENUMBER 489 L1
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager net/minecraft/inventory/Slot net/minecraft/item/ItemStack I I java/lang/String] []
+ GETSTATIC codechicken/nei/guihook/GuiContainerManager.drawItems : Lnet/minecraft/client/renderer/entity/RenderItem;
+ GETSTATIC codechicken/lib/gui/GuiDraw.fontRenderer : Lnet/minecraft/client/gui/FontRenderer;
+ ALOAD 0
+ GETFIELD codechicken/nei/guihook/GuiContainerManager.window : Lnet/minecraft/client/gui/inventory/GuiContainer;
+ GETFIELD net/minecraft/client/gui/inventory/GuiContainer.mc : Lnet/minecraft/client/Minecraft;
+ INVOKEVIRTUAL net/minecraft/client/Minecraft.getTextureManager ()Lnet/minecraft/client/renderer/texture/TextureManager;
+ ALOAD 2
+ ILOAD 3
+ ILOAD 4
+ INVOKEVIRTUAL net/minecraft/client/renderer/entity/RenderItem.renderItemAndEffectIntoGUI (Lnet/minecraft/client/gui/FontRenderer;Lnet/minecraft/client/renderer/texture/TextureManager;Lnet/minecraft/item/ItemStack;II)V
+ L4
+ LINENUMBER 490 L4
+ GETSTATIC codechicken/nei/guihook/GuiContainerManager.drawItems : Lnet/minecraft/client/renderer/entity/RenderItem;
+ GETSTATIC codechicken/lib/gui/GuiDraw.fontRenderer : Lnet/minecraft/client/gui/FontRenderer;
+ ALOAD 0
+ GETFIELD codechicken/nei/guihook/GuiContainerManager.window : Lnet/minecraft/client/gui/inventory/GuiContainer;
+ GETFIELD net/minecraft/client/gui/inventory/GuiContainer.mc : Lnet/minecraft/client/Minecraft;
+ INVOKEVIRTUAL net/minecraft/client/Minecraft.getTextureManager ()Lnet/minecraft/client/renderer/texture/TextureManager;
+ ALOAD 2
+ ILOAD 3
+ ILOAD 4
+ ALOAD 5
+ INVOKEVIRTUAL net/minecraft/client/renderer/entity/RenderItem.renderItemOverlayIntoGUI (Lnet/minecraft/client/gui/FontRenderer;Lnet/minecraft/client/renderer/texture/TextureManager;Lnet/minecraft/item/ItemStack;IILjava/lang/String;)V
+ L3
+ LINENUMBER 492 L3
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager net/minecraft/inventory/Slot net/minecraft/item/ItemStack I I java/lang/String] []
+ RETURN
+ L5
+ LOCALVARIABLE this Lcodechicken/nei/guihook/GuiContainerManager; L0 L5 0
+ LOCALVARIABLE slot Lnet/minecraft/inventory/Slot; L0 L5 1
+ LOCALVARIABLE stack Lnet/minecraft/item/ItemStack; L0 L5 2
+ LOCALVARIABLE x I L0 L5 3
+ LOCALVARIABLE y I L0 L5 4
+ LOCALVARIABLE quantity Ljava/lang/String; L0 L5 5
+ MAXSTACK = 7
+ MAXLOCALS = 6
+
+ // access flags 0x1
+ public handleSlotClick(III)V
+ L0
+ LINENUMBER 498 L0
+ ILOAD 1
+ ICONST_M1
+ IF_ICMPNE L1
+ L2
+ LINENUMBER 499 L2
+ RETURN
+ L1
+ LINENUMBER 501 L1
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager I I I] []
+ ALOAD 0
+ GETFIELD codechicken/nei/guihook/GuiContainerManager.window : Lnet/minecraft/client/gui/inventory/GuiContainer;
+ INSTANCEOF codechicken/nei/guihook/IGuiClientSide
+ IFEQ L3
+ L4
+ LINENUMBER 502 L4
+ ALOAD 0
+ GETFIELD codechicken/nei/guihook/GuiContainerManager.window : Lnet/minecraft/client/gui/inventory/GuiContainer;
+ GETFIELD net/minecraft/client/gui/inventory/GuiContainer.mc : Lnet/minecraft/client/Minecraft;
+ GETFIELD net/minecraft/client/Minecraft.thePlayer : Lnet/minecraft/client/entity/EntityClientPlayerMP;
+ GETFIELD net/minecraft/client/entity/EntityClientPlayerMP.openContainer : Lnet/minecraft/inventory/Container;
+ ILOAD 1
+ ILOAD 2
+ ILOAD 3
+ ALOAD 0
+ GETFIELD codechicken/nei/guihook/GuiContainerManager.window : Lnet/minecraft/client/gui/inventory/GuiContainer;
+ GETFIELD net/minecraft/client/gui/inventory/GuiContainer.mc : Lnet/minecraft/client/Minecraft;
+ GETFIELD net/minecraft/client/Minecraft.thePlayer : Lnet/minecraft/client/entity/EntityClientPlayerMP;
+ INVOKEVIRTUAL net/minecraft/inventory/Container.slotClick (IIILnet/minecraft/entity/player/EntityPlayer;)Lnet/minecraft/item/ItemStack;
+ POP
+ GOTO L5
+ L3
+ LINENUMBER 504 L3
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager I I I] []
+ ALOAD 0
+ GETFIELD codechicken/nei/guihook/GuiContainerManager.window : Lnet/minecraft/client/gui/inventory/GuiContainer;
+ GETFIELD net/minecraft/client/gui/inventory/GuiContainer.mc : Lnet/minecraft/client/Minecraft;
+ GETFIELD net/minecraft/client/Minecraft.playerController : Lnet/minecraft/client/multiplayer/PlayerControllerMP;
+ ALOAD 0
+ GETFIELD codechicken/nei/guihook/GuiContainerManager.window : Lnet/minecraft/client/gui/inventory/GuiContainer;
+ GETFIELD net/minecraft/client/gui/inventory/GuiContainer.inventorySlots : Lnet/minecraft/inventory/Container;
+ GETFIELD net/minecraft/inventory/Container.windowId : I
+ ILOAD 1
+ ILOAD 2
+ ILOAD 3
+ ALOAD 0
+ GETFIELD codechicken/nei/guihook/GuiContainerManager.window : Lnet/minecraft/client/gui/inventory/GuiContainer;
+ GETFIELD net/minecraft/client/gui/inventory/GuiContainer.mc : Lnet/minecraft/client/Minecraft;
+ GETFIELD net/minecraft/client/Minecraft.thePlayer : Lnet/minecraft/client/entity/EntityClientPlayerMP;
+ INVOKEVIRTUAL net/minecraft/client/multiplayer/PlayerControllerMP.windowClick (IIIILnet/minecraft/entity/player/EntityPlayer;)Lnet/minecraft/item/ItemStack;
+ POP
+ L5
+ LINENUMBER 505 L5
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager I I I] []
+ RETURN
+ L6
+ LOCALVARIABLE this Lcodechicken/nei/guihook/GuiContainerManager; L0 L6 0
+ LOCALVARIABLE slotIndex I L0 L6 1
+ LOCALVARIABLE button I L0 L6 2
+ LOCALVARIABLE modifiers I L0 L6 3
+ MAXSTACK = 6
+ MAXLOCALS = 4
+
+ // access flags 0x1
+ public handleMouseWheel()V
+ L0
+ LINENUMBER 511 L0
+ INVOKESTATIC org/lwjgl/input/Mouse.getEventDWheel ()I
+ ISTORE 1
+ L1
+ LINENUMBER 512 L1
+ ILOAD 1
+ IFEQ L2
+ L3
+ LINENUMBER 513 L3
+ ALOAD 0
+ ILOAD 1
+ IFLE L4
+ ICONST_1
+ GOTO L5
+ L4
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager I] [codechicken/nei/guihook/GuiContainerManager]
+ ICONST_M1
+ L5
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager I] [codechicken/nei/guihook/GuiContainerManager I]
+ INVOKEVIRTUAL codechicken/nei/guihook/GuiContainerManager.mouseScrolled (I)V
+ L2
+ LINENUMBER 514 L2
+ FRAME FULL [codechicken/nei/guihook/GuiContainerManager I] []
+ RETURN
+ L6
+ LOCALVARIABLE this Lcodechicken/nei/guihook/GuiContainerManager; L0 L6 0
+ LOCALVARIABLE i I L1 L6 1
+ MAXSTACK = 2
+ MAXLOCALS = 2
+
+ // access flags 0x8
+ static ()V
+ L0
+ LINENUMBER 33 L0
+ NEW net/minecraft/client/renderer/entity/RenderItem
+ DUP
+ INVOKESPECIAL net/minecraft/client/renderer/entity/RenderItem. ()V
+ PUTSTATIC codechicken/nei/guihook/GuiContainerManager.drawItems : Lnet/minecraft/client/renderer/entity/RenderItem;
+ L1
+ LINENUMBER 34 L1
+ NEW java/util/LinkedList
+ DUP
+ INVOKESPECIAL java/util/LinkedList. ()V
+ PUTSTATIC codechicken/nei/guihook/GuiContainerManager.tooltipHandlers : Ljava/util/LinkedList;
+ L2
+ LINENUMBER 35 L2
+ NEW java/util/LinkedList
+ DUP
+ INVOKESPECIAL java/util/LinkedList. ()V
+ PUTSTATIC codechicken/nei/guihook/GuiContainerManager.inputHandlers : Ljava/util/LinkedList;
+ L3
+ LINENUMBER 36 L3
+ NEW java/util/LinkedList
+ DUP
+ INVOKESPECIAL java/util/LinkedList. ()V
+ PUTSTATIC codechicken/nei/guihook/GuiContainerManager.drawHandlers : Ljava/util/LinkedList;
+ L4
+ LINENUMBER 37 L4
+ NEW java/util/LinkedList
+ DUP
+ INVOKESPECIAL java/util/LinkedList. ()V
+ PUTSTATIC codechicken/nei/guihook/GuiContainerManager.objectHandlers : Ljava/util/LinkedList;
+ L5
+ LINENUMBER 38 L5
+ NEW java/util/LinkedList
+ DUP
+ INVOKESPECIAL java/util/LinkedList. ()V
+ PUTSTATIC codechicken/nei/guihook/GuiContainerManager.slotClickHandlers : Ljava/util/LinkedList;
+ L6
+ LINENUMBER 41 L6
+ NEW codechicken/nei/guihook/DefaultSlotClickHandler
+ DUP
+ INVOKESPECIAL codechicken/nei/guihook/DefaultSlotClickHandler. ()V
+ INVOKESTATIC codechicken/nei/guihook/GuiContainerManager.addSlotClickHandler (Lcodechicken/nei/guihook/IContainerSlotClickHandler;)V
+ L7
+ LINENUMBER 180 L7
+ ICONST_M1
+ PUTSTATIC codechicken/nei/guihook/GuiContainerManager.modelviewDepth : I
+ L8
+ LINENUMBER 181 L8
+ NEW java/util/HashSet
+ DUP
+ INVOKESPECIAL java/util/HashSet. ()V
+ PUTSTATIC codechicken/nei/guihook/GuiContainerManager.stackTraces : Ljava/util/HashSet;
+ RETURN
+ MAXSTACK = 2
+ MAXLOCALS = 0
+}
diff --git a/eclipse/asm/ccl_modular/net#minecraft#block#Block.txt b/eclipse/asm/ccl_modular/net#minecraft#block#Block.txt
new file mode 100644
index 0000000..e3cad6b
--- /dev/null
+++ b/eclipse/asm/ccl_modular/net#minecraft#block#Block.txt
@@ -0,0 +1,8911 @@
+// class version 50.0 (50)
+// access flags 0x21
+public class net/minecraft/block/Block {
+
+ // compiled from: Block.java
+ // access flags 0x1008
+ static synthetic INNERCLASS net/minecraft/block/Block$6 null null
+ // access flags 0x9
+ public static INNERCLASS net/minecraft/block/Block$SoundType net/minecraft/block/Block SoundType
+ // access flags 0x0
+ INNERCLASS net/minecraft/block/Block$5 null null
+ // access flags 0x0
+ INNERCLASS net/minecraft/block/Block$4 null null
+ // access flags 0x8
+ static INNERCLASS net/minecraft/block/Block$3 null null
+ // access flags 0x8
+ static INNERCLASS net/minecraft/block/Block$2 null null
+ // access flags 0x8
+ static INNERCLASS net/minecraft/block/Block$1 null null
+ // access flags 0x4019
+ public final static enum INNERCLASS net/minecraft/block/BlockPressurePlate$Sensitivity net/minecraft/block/BlockPressurePlate Sensitivity
+
+ // access flags 0x19
+ public final static Lnet/minecraft/util/RegistryNamespaced; blockRegistry
+
+ // access flags 0x2
+ private Lnet/minecraft/creativetab/CreativeTabs; displayOnCreativeTab
+
+ // access flags 0x4
+ protected Ljava/lang/String; textureName
+
+ // access flags 0x19
+ public final static Lnet/minecraft/block/Block$SoundType; soundTypeStone
+
+ // access flags 0x19
+ public final static Lnet/minecraft/block/Block$SoundType; soundTypeWood
+
+ // access flags 0x19
+ public final static Lnet/minecraft/block/Block$SoundType; soundTypeGravel
+
+ // access flags 0x19
+ public final static Lnet/minecraft/block/Block$SoundType; soundTypeGrass
+
+ // access flags 0x19
+ public final static Lnet/minecraft/block/Block$SoundType; soundTypePiston
+
+ // access flags 0x19
+ public final static Lnet/minecraft/block/Block$SoundType; soundTypeMetal
+
+ // access flags 0x19
+ public final static Lnet/minecraft/block/Block$SoundType; soundTypeGlass
+
+ // access flags 0x19
+ public final static Lnet/minecraft/block/Block$SoundType; soundTypeCloth
+
+ // access flags 0x19
+ public final static Lnet/minecraft/block/Block$SoundType; soundTypeSand
+
+ // access flags 0x19
+ public final static Lnet/minecraft/block/Block$SoundType; soundTypeSnow
+
+ // access flags 0x19
+ public final static Lnet/minecraft/block/Block$SoundType; soundTypeLadder
+
+ // access flags 0x19
+ public final static Lnet/minecraft/block/Block$SoundType; soundTypeAnvil
+
+ // access flags 0x4
+ protected Z opaque
+
+ // access flags 0x4
+ protected I lightOpacity
+
+ // access flags 0x4
+ protected Z canBlockGrass
+
+ // access flags 0x4
+ protected I lightValue
+
+ // access flags 0x4
+ protected Z useNeighborBrightness
+
+ // access flags 0x4
+ protected F blockHardness
+
+ // access flags 0x4
+ protected F blockResistance
+
+ // access flags 0x4
+ protected Z blockConstructorCalled
+
+ // access flags 0x4
+ protected Z enableStats
+
+ // access flags 0x4
+ protected Z needsRandomTick
+
+ // access flags 0x4
+ protected Z isBlockContainer
+
+ // access flags 0x4
+ protected D minX
+
+ // access flags 0x4
+ protected D minY
+
+ // access flags 0x4
+ protected D minZ
+
+ // access flags 0x4
+ protected D maxX
+
+ // access flags 0x4
+ protected D maxY
+
+ // access flags 0x4
+ protected D maxZ
+
+ // access flags 0x1
+ public Lnet/minecraft/block/Block$SoundType; stepSound
+
+ // access flags 0x1
+ public F blockParticleGravity
+
+ // access flags 0x14
+ protected final Lnet/minecraft/block/material/Material; blockMaterial
+
+ // access flags 0x1
+ public F slipperiness
+
+ // access flags 0x2
+ private Ljava/lang/String; unlocalizedName
+
+ // access flags 0x4
+ protected Lnet/minecraft/util/IIcon; blockIcon
+ @Lcpw/mods/fml/relauncher/SideOnly;(value=Lcpw/mods/fml/relauncher/Side;.CLIENT)
+
+ // access flags 0x1A
+ private final static Ljava/lang/String; __OBFID = "CL_00000199"
+
+ // access flags 0x11
+ // signature Lcpw/mods/fml/common/registry/RegistryDelegate;
+ // declaration: cpw.mods.fml.common.registry.RegistryDelegate
+ public final Lcpw/mods/fml/common/registry/RegistryDelegate; delegate
+
+ // access flags 0x4
+ // signature Ljava/lang/ThreadLocal;
+ // declaration: java.lang.ThreadLocal
+ protected Ljava/lang/ThreadLocal; harvesters
+
+ // access flags 0x2
+ // signature Ljava/lang/ThreadLocal;
+ // declaration: java.lang.ThreadLocal
+ private Ljava/lang/ThreadLocal; silk_check_meta
+
+ // access flags 0x2
+ private Z isTileProvider
+
+ // access flags 0x2
+ private [Ljava/lang/String; harvestTool
+
+ // access flags 0x2
+ private [I harvestLevel
+
+ // access flags 0x4
+ // signature Ljava/lang/ThreadLocal;
+ // declaration: java.lang.ThreadLocal
+ protected Ljava/lang/ThreadLocal; captureDrops
+
+ // access flags 0x4
+ // signature Ljava/lang/ThreadLocal;>;
+ // declaration: java.lang.ThreadLocal>
+ protected Ljava/lang/ThreadLocal; capturedDrops
+
+ // access flags 0x9
+ public static getIdFromBlock(Lnet/minecraft/block/Block;)I
+ L0
+ LINENUMBER 162 L0
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ ALOAD 0
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.getIDForObject (Ljava/lang/Object;)I
+ IRETURN
+ L1
+ LOCALVARIABLE p_149682_0_ Lnet/minecraft/block/Block; L0 L1 0
+ MAXSTACK = 2
+ MAXLOCALS = 1
+
+ // access flags 0x9
+ public static getBlockById(I)Lnet/minecraft/block/Block;
+ L0
+ LINENUMBER 167 L0
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ ILOAD 0
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.getObjectById (I)Ljava/lang/Object;
+ CHECKCAST net/minecraft/block/Block
+ ASTORE 1
+ L1
+ LINENUMBER 168 L1
+ ALOAD 1
+ IFNONNULL L2
+ GETSTATIC net/minecraft/init/Blocks.air : Lnet/minecraft/block/Block;
+ GOTO L3
+ L2
+ FRAME FULL [I net/minecraft/block/Block] []
+ ALOAD 1
+ L3
+ FRAME FULL [I net/minecraft/block/Block] [net/minecraft/block/Block]
+ ARETURN
+ L4
+ LOCALVARIABLE p_149729_0_ I L0 L4 0
+ LOCALVARIABLE ret Lnet/minecraft/block/Block; L1 L4 1
+ MAXSTACK = 2
+ MAXLOCALS = 2
+
+ // access flags 0x9
+ public static getBlockFromItem(Lnet/minecraft/item/Item;)Lnet/minecraft/block/Block;
+ L0
+ LINENUMBER 173 L0
+ ALOAD 0
+ INVOKESTATIC net/minecraft/item/Item.getIdFromItem (Lnet/minecraft/item/Item;)I
+ INVOKESTATIC net/minecraft/block/Block.getBlockById (I)Lnet/minecraft/block/Block;
+ ARETURN
+ L1
+ LOCALVARIABLE p_149634_0_ Lnet/minecraft/item/Item; L0 L1 0
+ MAXSTACK = 1
+ MAXLOCALS = 1
+
+ // access flags 0x9
+ public static getBlockFromName(Ljava/lang/String;)Lnet/minecraft/block/Block;
+ TRYCATCHBLOCK L0 L1 L2 java/lang/NumberFormatException
+ L3
+ LINENUMBER 178 L3
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ ALOAD 0
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.containsKey (Ljava/lang/String;)Z
+ IFEQ L0
+ L4
+ LINENUMBER 180 L4
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ ALOAD 0
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.getObject (Ljava/lang/String;)Ljava/lang/Object;
+ CHECKCAST net/minecraft/block/Block
+ ARETURN
+ L0
+ LINENUMBER 186 L0
+ FRAME FULL [java/lang/String] []
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ ALOAD 0
+ INVOKESTATIC java/lang/Integer.parseInt (Ljava/lang/String;)I
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.getObjectById (I)Ljava/lang/Object;
+ CHECKCAST net/minecraft/block/Block
+ L1
+ ARETURN
+ L2
+ LINENUMBER 188 L2
+ FRAME FULL [java/lang/String] [java/lang/NumberFormatException]
+ ASTORE 1
+ L5
+ LINENUMBER 190 L5
+ ACONST_NULL
+ ARETURN
+ L6
+ LOCALVARIABLE numberformatexception Ljava/lang/NumberFormatException; L5 L6 1
+ LOCALVARIABLE p_149684_0_ Ljava/lang/String; L3 L6 0
+ MAXSTACK = 2
+ MAXLOCALS = 2
+
+ // access flags 0x1
+ public func_149730_j()Z
+ L0
+ LINENUMBER 197 L0
+ ALOAD 0
+ GETFIELD net/minecraft/block/Block.opaque : Z
+ IRETURN
+ L1
+ LOCALVARIABLE this Lnet/minecraft/block/Block; L0 L1 0
+ MAXSTACK = 1
+ MAXLOCALS = 1
+
+ // access flags 0x1
+ public getLightOpacity()I
+ L0
+ LINENUMBER 202 L0
+ ALOAD 0
+ GETFIELD net/minecraft/block/Block.lightOpacity : I
+ IRETURN
+ L1
+ LOCALVARIABLE this Lnet/minecraft/block/Block; L0 L1 0
+ MAXSTACK = 1
+ MAXLOCALS = 1
+
+ // access flags 0x1
+ public getCanBlockGrass()Z
+ @Lcpw/mods/fml/relauncher/SideOnly;(value=Lcpw/mods/fml/relauncher/Side;.CLIENT)
+ L0
+ LINENUMBER 208 L0
+ ALOAD 0
+ GETFIELD net/minecraft/block/Block.canBlockGrass : Z
+ IRETURN
+ L1
+ LOCALVARIABLE this Lnet/minecraft/block/Block; L0 L1 0
+ MAXSTACK = 1
+ MAXLOCALS = 1
+
+ // access flags 0x1
+ public getLightValue()I
+ L0
+ LINENUMBER 216 L0
+ ALOAD 0
+ GETFIELD net/minecraft/block/Block.lightValue : I
+ IRETURN
+ L1
+ LOCALVARIABLE this Lnet/minecraft/block/Block; L0 L1 0
+ MAXSTACK = 1
+ MAXLOCALS = 1
+
+ // access flags 0x1
+ public getUseNeighborBrightness()Z
+ L0
+ LINENUMBER 224 L0
+ ALOAD 0
+ GETFIELD net/minecraft/block/Block.useNeighborBrightness : Z
+ IRETURN
+ L1
+ LOCALVARIABLE this Lnet/minecraft/block/Block; L0 L1 0
+ MAXSTACK = 1
+ MAXLOCALS = 1
+
+ // access flags 0x1
+ public getMaterial()Lnet/minecraft/block/material/Material;
+ L0
+ LINENUMBER 229 L0
+ ALOAD 0
+ GETFIELD net/minecraft/block/Block.blockMaterial : Lnet/minecraft/block/material/Material;
+ ARETURN
+ L1
+ LOCALVARIABLE this Lnet/minecraft/block/Block; L0 L1 0
+ MAXSTACK = 1
+ MAXLOCALS = 1
+
+ // access flags 0x1
+ public getMapColor(I)Lnet/minecraft/block/material/MapColor;
+ L0
+ LINENUMBER 234 L0
+ ALOAD 0
+ INVOKEVIRTUAL net/minecraft/block/Block.getMaterial ()Lnet/minecraft/block/material/Material;
+ INVOKEVIRTUAL net/minecraft/block/material/Material.getMaterialMapColor ()Lnet/minecraft/block/material/MapColor;
+ ARETURN
+ L1
+ LOCALVARIABLE this Lnet/minecraft/block/Block; L0 L1 0
+ LOCALVARIABLE p_149728_1_ I L0 L1 1
+ MAXSTACK = 1
+ MAXLOCALS = 2
+
+ // access flags 0x9
+ public static registerBlocks()V
+ L0
+ LINENUMBER 239 L0
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ ICONST_0
+ LDC "air"
+ NEW net/minecraft/block/BlockAir
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockAir. ()V
+ LDC "air"
+ INVOKEVIRTUAL net/minecraft/block/BlockAir.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L1
+ LINENUMBER 240 L1
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ ICONST_1
+ LDC "stone"
+ NEW net/minecraft/block/BlockStone
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockStone. ()V
+ LDC 1.5
+ INVOKEVIRTUAL net/minecraft/block/BlockStone.setHardness (F)Lnet/minecraft/block/Block;
+ LDC 10.0
+ INVOKEVIRTUAL net/minecraft/block/Block.setResistance (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypePiston : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "stone"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "stone"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L2
+ LINENUMBER 241 L2
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ ICONST_2
+ LDC "grass"
+ NEW net/minecraft/block/BlockGrass
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockGrass. ()V
+ LDC 0.6
+ INVOKEVIRTUAL net/minecraft/block/BlockGrass.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeGrass : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "grass"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "grass"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L3
+ LINENUMBER 242 L3
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ ICONST_3
+ LDC "dirt"
+ NEW net/minecraft/block/BlockDirt
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockDirt. ()V
+ LDC 0.5
+ INVOKEVIRTUAL net/minecraft/block/BlockDirt.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeGravel : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "dirt"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "dirt"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L4
+ LINENUMBER 243 L4
+ NEW net/minecraft/block/Block
+ DUP
+ GETSTATIC net/minecraft/block/material/Material.rock : Lnet/minecraft/block/material/Material;
+ INVOKESPECIAL net/minecraft/block/Block. (Lnet/minecraft/block/material/Material;)V
+ FCONST_2
+ INVOKEVIRTUAL net/minecraft/block/Block.setHardness (F)Lnet/minecraft/block/Block;
+ LDC 10.0
+ INVOKEVIRTUAL net/minecraft/block/Block.setResistance (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypePiston : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "stonebrick"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/creativetab/CreativeTabs.tabBlock : Lnet/minecraft/creativetab/CreativeTabs;
+ INVOKEVIRTUAL net/minecraft/block/Block.setCreativeTab (Lnet/minecraft/creativetab/CreativeTabs;)Lnet/minecraft/block/Block;
+ LDC "cobblestone"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ ASTORE 0
+ L5
+ LINENUMBER 244 L5
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ ICONST_4
+ LDC "cobblestone"
+ ALOAD 0
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L6
+ LINENUMBER 245 L6
+ NEW net/minecraft/block/BlockWood
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockWood. ()V
+ FCONST_2
+ INVOKEVIRTUAL net/minecraft/block/BlockWood.setHardness (F)Lnet/minecraft/block/Block;
+ LDC 5.0
+ INVOKEVIRTUAL net/minecraft/block/Block.setResistance (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeWood : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "wood"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "planks"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ ASTORE 1
+ L7
+ LINENUMBER 246 L7
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ ICONST_5
+ LDC "planks"
+ ALOAD 1
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L8
+ LINENUMBER 247 L8
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 6
+ LDC "sapling"
+ NEW net/minecraft/block/BlockSapling
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockSapling. ()V
+ FCONST_0
+ INVOKEVIRTUAL net/minecraft/block/BlockSapling.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeGrass : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "sapling"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "sapling"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L9
+ LINENUMBER 248 L9
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 7
+ LDC "bedrock"
+ NEW net/minecraft/block/Block
+ DUP
+ GETSTATIC net/minecraft/block/material/Material.rock : Lnet/minecraft/block/material/Material;
+ INVOKESPECIAL net/minecraft/block/Block. (Lnet/minecraft/block/material/Material;)V
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockUnbreakable ()Lnet/minecraft/block/Block;
+ LDC 6000000.0
+ INVOKEVIRTUAL net/minecraft/block/Block.setResistance (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypePiston : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "bedrock"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/block/Block.disableStats ()Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/creativetab/CreativeTabs.tabBlock : Lnet/minecraft/creativetab/CreativeTabs;
+ INVOKEVIRTUAL net/minecraft/block/Block.setCreativeTab (Lnet/minecraft/creativetab/CreativeTabs;)Lnet/minecraft/block/Block;
+ LDC "bedrock"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L10
+ LINENUMBER 249 L10
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 8
+ LDC "flowing_water"
+ NEW net/minecraft/block/BlockDynamicLiquid
+ DUP
+ GETSTATIC net/minecraft/block/material/Material.water : Lnet/minecraft/block/material/Material;
+ INVOKESPECIAL net/minecraft/block/BlockDynamicLiquid. (Lnet/minecraft/block/material/Material;)V
+ LDC 100.0
+ INVOKEVIRTUAL net/minecraft/block/BlockDynamicLiquid.setHardness (F)Lnet/minecraft/block/Block;
+ ICONST_3
+ INVOKEVIRTUAL net/minecraft/block/Block.setLightOpacity (I)Lnet/minecraft/block/Block;
+ LDC "water"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/block/Block.disableStats ()Lnet/minecraft/block/Block;
+ LDC "water_flow"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L11
+ LINENUMBER 250 L11
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 9
+ LDC "water"
+ NEW net/minecraft/block/BlockStaticLiquid
+ DUP
+ GETSTATIC net/minecraft/block/material/Material.water : Lnet/minecraft/block/material/Material;
+ INVOKESPECIAL net/minecraft/block/BlockStaticLiquid. (Lnet/minecraft/block/material/Material;)V
+ LDC 100.0
+ INVOKEVIRTUAL net/minecraft/block/BlockStaticLiquid.setHardness (F)Lnet/minecraft/block/Block;
+ ICONST_3
+ INVOKEVIRTUAL net/minecraft/block/Block.setLightOpacity (I)Lnet/minecraft/block/Block;
+ LDC "water"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/block/Block.disableStats ()Lnet/minecraft/block/Block;
+ LDC "water_still"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L12
+ LINENUMBER 251 L12
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 10
+ LDC "flowing_lava"
+ NEW net/minecraft/block/BlockDynamicLiquid
+ DUP
+ GETSTATIC net/minecraft/block/material/Material.lava : Lnet/minecraft/block/material/Material;
+ INVOKESPECIAL net/minecraft/block/BlockDynamicLiquid. (Lnet/minecraft/block/material/Material;)V
+ LDC 100.0
+ INVOKEVIRTUAL net/minecraft/block/BlockDynamicLiquid.setHardness (F)Lnet/minecraft/block/Block;
+ FCONST_1
+ INVOKEVIRTUAL net/minecraft/block/Block.setLightLevel (F)Lnet/minecraft/block/Block;
+ LDC "lava"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/block/Block.disableStats ()Lnet/minecraft/block/Block;
+ LDC "lava_flow"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L13
+ LINENUMBER 252 L13
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 11
+ LDC "lava"
+ NEW net/minecraft/block/BlockStaticLiquid
+ DUP
+ GETSTATIC net/minecraft/block/material/Material.lava : Lnet/minecraft/block/material/Material;
+ INVOKESPECIAL net/minecraft/block/BlockStaticLiquid. (Lnet/minecraft/block/material/Material;)V
+ LDC 100.0
+ INVOKEVIRTUAL net/minecraft/block/BlockStaticLiquid.setHardness (F)Lnet/minecraft/block/Block;
+ FCONST_1
+ INVOKEVIRTUAL net/minecraft/block/Block.setLightLevel (F)Lnet/minecraft/block/Block;
+ LDC "lava"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/block/Block.disableStats ()Lnet/minecraft/block/Block;
+ LDC "lava_still"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L14
+ LINENUMBER 253 L14
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 12
+ LDC "sand"
+ NEW net/minecraft/block/BlockSand
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockSand. ()V
+ LDC 0.5
+ INVOKEVIRTUAL net/minecraft/block/BlockSand.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeSand : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "sand"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "sand"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L15
+ LINENUMBER 254 L15
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 13
+ LDC "gravel"
+ NEW net/minecraft/block/BlockGravel
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockGravel. ()V
+ LDC 0.6
+ INVOKEVIRTUAL net/minecraft/block/BlockGravel.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeGravel : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "gravel"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "gravel"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L16
+ LINENUMBER 255 L16
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 14
+ LDC "gold_ore"
+ NEW net/minecraft/block/BlockOre
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockOre. ()V
+ LDC 3.0
+ INVOKEVIRTUAL net/minecraft/block/BlockOre.setHardness (F)Lnet/minecraft/block/Block;
+ LDC 5.0
+ INVOKEVIRTUAL net/minecraft/block/Block.setResistance (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypePiston : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "oreGold"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "gold_ore"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L17
+ LINENUMBER 256 L17
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 15
+ LDC "iron_ore"
+ NEW net/minecraft/block/BlockOre
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockOre. ()V
+ LDC 3.0
+ INVOKEVIRTUAL net/minecraft/block/BlockOre.setHardness (F)Lnet/minecraft/block/Block;
+ LDC 5.0
+ INVOKEVIRTUAL net/minecraft/block/Block.setResistance (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypePiston : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "oreIron"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "iron_ore"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L18
+ LINENUMBER 257 L18
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 16
+ LDC "coal_ore"
+ NEW net/minecraft/block/BlockOre
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockOre. ()V
+ LDC 3.0
+ INVOKEVIRTUAL net/minecraft/block/BlockOre.setHardness (F)Lnet/minecraft/block/Block;
+ LDC 5.0
+ INVOKEVIRTUAL net/minecraft/block/Block.setResistance (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypePiston : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "oreCoal"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "coal_ore"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L19
+ LINENUMBER 258 L19
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 17
+ LDC "log"
+ NEW net/minecraft/block/BlockOldLog
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockOldLog. ()V
+ LDC "log"
+ INVOKEVIRTUAL net/minecraft/block/BlockOldLog.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "log"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L20
+ LINENUMBER 259 L20
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 18
+ LDC "leaves"
+ NEW net/minecraft/block/BlockOldLeaf
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockOldLeaf. ()V
+ LDC "leaves"
+ INVOKEVIRTUAL net/minecraft/block/BlockOldLeaf.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "leaves"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L21
+ LINENUMBER 260 L21
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 19
+ LDC "sponge"
+ NEW net/minecraft/block/BlockSponge
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockSponge. ()V
+ LDC 0.6
+ INVOKEVIRTUAL net/minecraft/block/BlockSponge.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeGrass : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "sponge"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "sponge"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L22
+ LINENUMBER 261 L22
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 20
+ LDC "glass"
+ NEW net/minecraft/block/BlockGlass
+ DUP
+ GETSTATIC net/minecraft/block/material/Material.glass : Lnet/minecraft/block/material/Material;
+ ICONST_0
+ INVOKESPECIAL net/minecraft/block/BlockGlass. (Lnet/minecraft/block/material/Material;Z)V
+ LDC 0.3
+ INVOKEVIRTUAL net/minecraft/block/BlockGlass.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeGlass : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "glass"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "glass"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L23
+ LINENUMBER 262 L23
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 21
+ LDC "lapis_ore"
+ NEW net/minecraft/block/BlockOre
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockOre. ()V
+ LDC 3.0
+ INVOKEVIRTUAL net/minecraft/block/BlockOre.setHardness (F)Lnet/minecraft/block/Block;
+ LDC 5.0
+ INVOKEVIRTUAL net/minecraft/block/Block.setResistance (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypePiston : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "oreLapis"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "lapis_ore"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L24
+ LINENUMBER 263 L24
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 22
+ LDC "lapis_block"
+ NEW net/minecraft/block/BlockCompressed
+ DUP
+ GETSTATIC net/minecraft/block/material/MapColor.lapisColor : Lnet/minecraft/block/material/MapColor;
+ INVOKESPECIAL net/minecraft/block/BlockCompressed. (Lnet/minecraft/block/material/MapColor;)V
+ LDC 3.0
+ INVOKEVIRTUAL net/minecraft/block/BlockCompressed.setHardness (F)Lnet/minecraft/block/Block;
+ LDC 5.0
+ INVOKEVIRTUAL net/minecraft/block/Block.setResistance (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypePiston : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "blockLapis"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/creativetab/CreativeTabs.tabBlock : Lnet/minecraft/creativetab/CreativeTabs;
+ INVOKEVIRTUAL net/minecraft/block/Block.setCreativeTab (Lnet/minecraft/creativetab/CreativeTabs;)Lnet/minecraft/block/Block;
+ LDC "lapis_block"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L25
+ LINENUMBER 264 L25
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 23
+ LDC "dispenser"
+ NEW net/minecraft/block/BlockDispenser
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockDispenser. ()V
+ LDC 3.5
+ INVOKEVIRTUAL net/minecraft/block/BlockDispenser.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypePiston : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "dispenser"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "dispenser"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L26
+ LINENUMBER 265 L26
+ NEW net/minecraft/block/BlockSandStone
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockSandStone. ()V
+ GETSTATIC net/minecraft/block/Block.soundTypePiston : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/BlockSandStone.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC 0.8
+ INVOKEVIRTUAL net/minecraft/block/Block.setHardness (F)Lnet/minecraft/block/Block;
+ LDC "sandStone"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "sandstone"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ ASTORE 2
+ L27
+ LINENUMBER 266 L27
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 24
+ LDC "sandstone"
+ ALOAD 2
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L28
+ LINENUMBER 267 L28
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 25
+ LDC "noteblock"
+ NEW net/minecraft/block/BlockNote
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockNote. ()V
+ LDC 0.8
+ INVOKEVIRTUAL net/minecraft/block/BlockNote.setHardness (F)Lnet/minecraft/block/Block;
+ LDC "musicBlock"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "noteblock"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L29
+ LINENUMBER 268 L29
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 26
+ LDC "bed"
+ NEW net/minecraft/block/BlockBed
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockBed. ()V
+ LDC 0.2
+ INVOKEVIRTUAL net/minecraft/block/BlockBed.setHardness (F)Lnet/minecraft/block/Block;
+ LDC "bed"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/block/Block.disableStats ()Lnet/minecraft/block/Block;
+ LDC "bed"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L30
+ LINENUMBER 269 L30
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 27
+ LDC "golden_rail"
+ NEW net/minecraft/block/BlockRailPowered
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockRailPowered. ()V
+ LDC 0.7
+ INVOKEVIRTUAL net/minecraft/block/BlockRailPowered.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeMetal : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "goldenRail"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "rail_golden"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L31
+ LINENUMBER 270 L31
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 28
+ LDC "detector_rail"
+ NEW net/minecraft/block/BlockRailDetector
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockRailDetector. ()V
+ LDC 0.7
+ INVOKEVIRTUAL net/minecraft/block/BlockRailDetector.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeMetal : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "detectorRail"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "rail_detector"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L32
+ LINENUMBER 271 L32
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 29
+ LDC "sticky_piston"
+ NEW net/minecraft/block/BlockPistonBase
+ DUP
+ ICONST_1
+ INVOKESPECIAL net/minecraft/block/BlockPistonBase. (Z)V
+ LDC "pistonStickyBase"
+ INVOKEVIRTUAL net/minecraft/block/BlockPistonBase.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L33
+ LINENUMBER 272 L33
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 30
+ LDC "web"
+ NEW net/minecraft/block/BlockWeb
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockWeb. ()V
+ ICONST_1
+ INVOKEVIRTUAL net/minecraft/block/BlockWeb.setLightOpacity (I)Lnet/minecraft/block/Block;
+ LDC 4.0
+ INVOKEVIRTUAL net/minecraft/block/Block.setHardness (F)Lnet/minecraft/block/Block;
+ LDC "web"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "web"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L34
+ LINENUMBER 273 L34
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 31
+ LDC "tallgrass"
+ NEW net/minecraft/block/BlockTallGrass
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockTallGrass. ()V
+ FCONST_0
+ INVOKEVIRTUAL net/minecraft/block/BlockTallGrass.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeGrass : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "tallgrass"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L35
+ LINENUMBER 274 L35
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 32
+ LDC "deadbush"
+ NEW net/minecraft/block/BlockDeadBush
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockDeadBush. ()V
+ FCONST_0
+ INVOKEVIRTUAL net/minecraft/block/BlockDeadBush.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeGrass : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "deadbush"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "deadbush"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L36
+ LINENUMBER 275 L36
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 33
+ LDC "piston"
+ NEW net/minecraft/block/BlockPistonBase
+ DUP
+ ICONST_0
+ INVOKESPECIAL net/minecraft/block/BlockPistonBase. (Z)V
+ LDC "pistonBase"
+ INVOKEVIRTUAL net/minecraft/block/BlockPistonBase.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L37
+ LINENUMBER 276 L37
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 34
+ LDC "piston_head"
+ NEW net/minecraft/block/BlockPistonExtension
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockPistonExtension. ()V
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L38
+ LINENUMBER 277 L38
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 35
+ LDC "wool"
+ NEW net/minecraft/block/BlockColored
+ DUP
+ GETSTATIC net/minecraft/block/material/Material.cloth : Lnet/minecraft/block/material/Material;
+ INVOKESPECIAL net/minecraft/block/BlockColored. (Lnet/minecraft/block/material/Material;)V
+ LDC 0.8
+ INVOKEVIRTUAL net/minecraft/block/BlockColored.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeCloth : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "cloth"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "wool_colored"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L39
+ LINENUMBER 278 L39
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 36
+ LDC "piston_extension"
+ NEW net/minecraft/block/BlockPistonMoving
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockPistonMoving. ()V
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L40
+ LINENUMBER 279 L40
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 37
+ LDC "yellow_flower"
+ NEW net/minecraft/block/BlockFlower
+ DUP
+ ICONST_0
+ INVOKESPECIAL net/minecraft/block/BlockFlower. (I)V
+ FCONST_0
+ INVOKEVIRTUAL net/minecraft/block/BlockFlower.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeGrass : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "flower1"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "flower_dandelion"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L41
+ LINENUMBER 280 L41
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 38
+ LDC "red_flower"
+ NEW net/minecraft/block/BlockFlower
+ DUP
+ ICONST_1
+ INVOKESPECIAL net/minecraft/block/BlockFlower. (I)V
+ FCONST_0
+ INVOKEVIRTUAL net/minecraft/block/BlockFlower.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeGrass : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "flower2"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "flower_rose"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L42
+ LINENUMBER 281 L42
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 39
+ LDC "brown_mushroom"
+ NEW net/minecraft/block/BlockMushroom
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockMushroom. ()V
+ FCONST_0
+ INVOKEVIRTUAL net/minecraft/block/BlockMushroom.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeGrass : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC 0.125
+ INVOKEVIRTUAL net/minecraft/block/Block.setLightLevel (F)Lnet/minecraft/block/Block;
+ LDC "mushroom"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "mushroom_brown"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L43
+ LINENUMBER 282 L43
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 40
+ LDC "red_mushroom"
+ NEW net/minecraft/block/BlockMushroom
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockMushroom. ()V
+ FCONST_0
+ INVOKEVIRTUAL net/minecraft/block/BlockMushroom.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeGrass : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "mushroom"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "mushroom_red"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L44
+ LINENUMBER 283 L44
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 41
+ LDC "gold_block"
+ NEW net/minecraft/block/BlockCompressed
+ DUP
+ GETSTATIC net/minecraft/block/material/MapColor.goldColor : Lnet/minecraft/block/material/MapColor;
+ INVOKESPECIAL net/minecraft/block/BlockCompressed. (Lnet/minecraft/block/material/MapColor;)V
+ LDC 3.0
+ INVOKEVIRTUAL net/minecraft/block/BlockCompressed.setHardness (F)Lnet/minecraft/block/Block;
+ LDC 10.0
+ INVOKEVIRTUAL net/minecraft/block/Block.setResistance (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeMetal : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "blockGold"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "gold_block"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L45
+ LINENUMBER 284 L45
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 42
+ LDC "iron_block"
+ NEW net/minecraft/block/BlockCompressed
+ DUP
+ GETSTATIC net/minecraft/block/material/MapColor.ironColor : Lnet/minecraft/block/material/MapColor;
+ INVOKESPECIAL net/minecraft/block/BlockCompressed. (Lnet/minecraft/block/material/MapColor;)V
+ LDC 5.0
+ INVOKEVIRTUAL net/minecraft/block/BlockCompressed.setHardness (F)Lnet/minecraft/block/Block;
+ LDC 10.0
+ INVOKEVIRTUAL net/minecraft/block/Block.setResistance (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeMetal : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "blockIron"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "iron_block"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L46
+ LINENUMBER 285 L46
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 43
+ LDC "double_stone_slab"
+ NEW net/minecraft/block/BlockStoneSlab
+ DUP
+ ICONST_1
+ INVOKESPECIAL net/minecraft/block/BlockStoneSlab. (Z)V
+ FCONST_2
+ INVOKEVIRTUAL net/minecraft/block/BlockStoneSlab.setHardness (F)Lnet/minecraft/block/Block;
+ LDC 10.0
+ INVOKEVIRTUAL net/minecraft/block/Block.setResistance (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypePiston : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "stoneSlab"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L47
+ LINENUMBER 286 L47
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 44
+ LDC "stone_slab"
+ NEW net/minecraft/block/BlockStoneSlab
+ DUP
+ ICONST_0
+ INVOKESPECIAL net/minecraft/block/BlockStoneSlab. (Z)V
+ FCONST_2
+ INVOKEVIRTUAL net/minecraft/block/BlockStoneSlab.setHardness (F)Lnet/minecraft/block/Block;
+ LDC 10.0
+ INVOKEVIRTUAL net/minecraft/block/Block.setResistance (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypePiston : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "stoneSlab"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L48
+ LINENUMBER 287 L48
+ NEW net/minecraft/block/Block
+ DUP
+ GETSTATIC net/minecraft/block/material/Material.rock : Lnet/minecraft/block/material/Material;
+ INVOKESPECIAL net/minecraft/block/Block. (Lnet/minecraft/block/material/Material;)V
+ FCONST_2
+ INVOKEVIRTUAL net/minecraft/block/Block.setHardness (F)Lnet/minecraft/block/Block;
+ LDC 10.0
+ INVOKEVIRTUAL net/minecraft/block/Block.setResistance (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypePiston : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "brick"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/creativetab/CreativeTabs.tabBlock : Lnet/minecraft/creativetab/CreativeTabs;
+ INVOKEVIRTUAL net/minecraft/block/Block.setCreativeTab (Lnet/minecraft/creativetab/CreativeTabs;)Lnet/minecraft/block/Block;
+ LDC "brick"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ ASTORE 3
+ L49
+ LINENUMBER 288 L49
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 45
+ LDC "brick_block"
+ ALOAD 3
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L50
+ LINENUMBER 289 L50
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 46
+ LDC "tnt"
+ NEW net/minecraft/block/BlockTNT
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockTNT. ()V
+ FCONST_0
+ INVOKEVIRTUAL net/minecraft/block/BlockTNT.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeGrass : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "tnt"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "tnt"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L51
+ LINENUMBER 290 L51
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 47
+ LDC "bookshelf"
+ NEW net/minecraft/block/BlockBookshelf
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockBookshelf. ()V
+ LDC 1.5
+ INVOKEVIRTUAL net/minecraft/block/BlockBookshelf.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeWood : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "bookshelf"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "bookshelf"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L52
+ LINENUMBER 291 L52
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 48
+ LDC "mossy_cobblestone"
+ NEW net/minecraft/block/Block
+ DUP
+ GETSTATIC net/minecraft/block/material/Material.rock : Lnet/minecraft/block/material/Material;
+ INVOKESPECIAL net/minecraft/block/Block. (Lnet/minecraft/block/material/Material;)V
+ FCONST_2
+ INVOKEVIRTUAL net/minecraft/block/Block.setHardness (F)Lnet/minecraft/block/Block;
+ LDC 10.0
+ INVOKEVIRTUAL net/minecraft/block/Block.setResistance (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypePiston : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "stoneMoss"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/creativetab/CreativeTabs.tabBlock : Lnet/minecraft/creativetab/CreativeTabs;
+ INVOKEVIRTUAL net/minecraft/block/Block.setCreativeTab (Lnet/minecraft/creativetab/CreativeTabs;)Lnet/minecraft/block/Block;
+ LDC "cobblestone_mossy"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L53
+ LINENUMBER 292 L53
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 49
+ LDC "obsidian"
+ NEW net/minecraft/block/BlockObsidian
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockObsidian. ()V
+ LDC 50.0
+ INVOKEVIRTUAL net/minecraft/block/BlockObsidian.setHardness (F)Lnet/minecraft/block/Block;
+ LDC 2000.0
+ INVOKEVIRTUAL net/minecraft/block/Block.setResistance (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypePiston : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "obsidian"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "obsidian"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L54
+ LINENUMBER 293 L54
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 50
+ LDC "torch"
+ NEW net/minecraft/block/BlockTorch
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockTorch. ()V
+ FCONST_0
+ INVOKEVIRTUAL net/minecraft/block/BlockTorch.setHardness (F)Lnet/minecraft/block/Block;
+ LDC 0.9375
+ INVOKEVIRTUAL net/minecraft/block/Block.setLightLevel (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeWood : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "torch"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "torch_on"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L55
+ LINENUMBER 294 L55
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 51
+ LDC "fire"
+ NEW net/minecraft/block/BlockFire
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockFire. ()V
+ FCONST_0
+ INVOKEVIRTUAL net/minecraft/block/BlockFire.setHardness (F)Lnet/minecraft/block/Block;
+ FCONST_1
+ INVOKEVIRTUAL net/minecraft/block/Block.setLightLevel (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeWood : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "fire"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/block/Block.disableStats ()Lnet/minecraft/block/Block;
+ LDC "fire"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L56
+ LINENUMBER 295 L56
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 52
+ LDC "mob_spawner"
+ NEW net/minecraft/block/BlockMobSpawner
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockMobSpawner. ()V
+ LDC 5.0
+ INVOKEVIRTUAL net/minecraft/block/BlockMobSpawner.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeMetal : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "mobSpawner"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/block/Block.disableStats ()Lnet/minecraft/block/Block;
+ LDC "mob_spawner"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L57
+ LINENUMBER 296 L57
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 53
+ LDC "oak_stairs"
+ NEW net/minecraft/block/BlockStairs
+ DUP
+ ALOAD 1
+ ICONST_0
+ INVOKESPECIAL net/minecraft/block/BlockStairs. (Lnet/minecraft/block/Block;I)V
+ LDC "stairsWood"
+ INVOKEVIRTUAL net/minecraft/block/BlockStairs.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L58
+ LINENUMBER 297 L58
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 54
+ LDC "chest"
+ NEW net/minecraft/block/BlockChest
+ DUP
+ ICONST_0
+ INVOKESPECIAL net/minecraft/block/BlockChest. (I)V
+ LDC 2.5
+ INVOKEVIRTUAL net/minecraft/block/BlockChest.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeWood : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "chest"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L59
+ LINENUMBER 298 L59
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 55
+ LDC "redstone_wire"
+ NEW net/minecraft/block/BlockRedstoneWire
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockRedstoneWire. ()V
+ FCONST_0
+ INVOKEVIRTUAL net/minecraft/block/BlockRedstoneWire.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeStone : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "redstoneDust"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/block/Block.disableStats ()Lnet/minecraft/block/Block;
+ LDC "redstone_dust"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L60
+ LINENUMBER 299 L60
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 56
+ LDC "diamond_ore"
+ NEW net/minecraft/block/BlockOre
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockOre. ()V
+ LDC 3.0
+ INVOKEVIRTUAL net/minecraft/block/BlockOre.setHardness (F)Lnet/minecraft/block/Block;
+ LDC 5.0
+ INVOKEVIRTUAL net/minecraft/block/Block.setResistance (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypePiston : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "oreDiamond"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "diamond_ore"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L61
+ LINENUMBER 300 L61
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 57
+ LDC "diamond_block"
+ NEW net/minecraft/block/BlockCompressed
+ DUP
+ GETSTATIC net/minecraft/block/material/MapColor.diamondColor : Lnet/minecraft/block/material/MapColor;
+ INVOKESPECIAL net/minecraft/block/BlockCompressed. (Lnet/minecraft/block/material/MapColor;)V
+ LDC 5.0
+ INVOKEVIRTUAL net/minecraft/block/BlockCompressed.setHardness (F)Lnet/minecraft/block/Block;
+ LDC 10.0
+ INVOKEVIRTUAL net/minecraft/block/Block.setResistance (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeMetal : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "blockDiamond"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "diamond_block"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L62
+ LINENUMBER 301 L62
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 58
+ LDC "crafting_table"
+ NEW net/minecraft/block/BlockWorkbench
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockWorkbench. ()V
+ LDC 2.5
+ INVOKEVIRTUAL net/minecraft/block/BlockWorkbench.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeWood : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "workbench"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "crafting_table"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L63
+ LINENUMBER 302 L63
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 59
+ LDC "wheat"
+ NEW net/minecraft/block/BlockCrops
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockCrops. ()V
+ LDC "crops"
+ INVOKEVIRTUAL net/minecraft/block/BlockCrops.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "wheat"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L64
+ LINENUMBER 303 L64
+ NEW net/minecraft/block/BlockFarmland
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockFarmland. ()V
+ LDC 0.6
+ INVOKEVIRTUAL net/minecraft/block/BlockFarmland.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeGravel : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "farmland"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "farmland"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ ASTORE 4
+ L65
+ LINENUMBER 304 L65
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 60
+ LDC "farmland"
+ ALOAD 4
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L66
+ LINENUMBER 305 L66
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 61
+ LDC "furnace"
+ NEW net/minecraft/block/BlockFurnace
+ DUP
+ ICONST_0
+ INVOKESPECIAL net/minecraft/block/BlockFurnace. (Z)V
+ LDC 3.5
+ INVOKEVIRTUAL net/minecraft/block/BlockFurnace.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypePiston : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "furnace"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/creativetab/CreativeTabs.tabDecorations : Lnet/minecraft/creativetab/CreativeTabs;
+ INVOKEVIRTUAL net/minecraft/block/Block.setCreativeTab (Lnet/minecraft/creativetab/CreativeTabs;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L67
+ LINENUMBER 306 L67
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 62
+ LDC "lit_furnace"
+ NEW net/minecraft/block/BlockFurnace
+ DUP
+ ICONST_1
+ INVOKESPECIAL net/minecraft/block/BlockFurnace. (Z)V
+ LDC 3.5
+ INVOKEVIRTUAL net/minecraft/block/BlockFurnace.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypePiston : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC 0.875
+ INVOKEVIRTUAL net/minecraft/block/Block.setLightLevel (F)Lnet/minecraft/block/Block;
+ LDC "furnace"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L68
+ LINENUMBER 307 L68
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 63
+ LDC "standing_sign"
+ NEW net/minecraft/block/BlockSign
+ DUP
+ LDC Lnet/minecraft/tileentity/TileEntitySign;.class
+ ICONST_1
+ INVOKESPECIAL net/minecraft/block/BlockSign. (Ljava/lang/Class;Z)V
+ FCONST_1
+ INVOKEVIRTUAL net/minecraft/block/BlockSign.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeWood : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "sign"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/block/Block.disableStats ()Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L69
+ LINENUMBER 308 L69
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 64
+ LDC "wooden_door"
+ NEW net/minecraft/block/BlockDoor
+ DUP
+ GETSTATIC net/minecraft/block/material/Material.wood : Lnet/minecraft/block/material/Material;
+ INVOKESPECIAL net/minecraft/block/BlockDoor. (Lnet/minecraft/block/material/Material;)V
+ LDC 3.0
+ INVOKEVIRTUAL net/minecraft/block/BlockDoor.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeWood : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "doorWood"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/block/Block.disableStats ()Lnet/minecraft/block/Block;
+ LDC "door_wood"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L70
+ LINENUMBER 309 L70
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 65
+ LDC "ladder"
+ NEW net/minecraft/block/BlockLadder
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockLadder. ()V
+ LDC 0.4
+ INVOKEVIRTUAL net/minecraft/block/BlockLadder.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeLadder : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "ladder"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "ladder"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L71
+ LINENUMBER 310 L71
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 66
+ LDC "rail"
+ NEW net/minecraft/block/BlockRail
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockRail. ()V
+ LDC 0.7
+ INVOKEVIRTUAL net/minecraft/block/BlockRail.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeMetal : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "rail"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "rail_normal"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L72
+ LINENUMBER 311 L72
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 67
+ LDC "stone_stairs"
+ NEW net/minecraft/block/BlockStairs
+ DUP
+ ALOAD 0
+ ICONST_0
+ INVOKESPECIAL net/minecraft/block/BlockStairs. (Lnet/minecraft/block/Block;I)V
+ LDC "stairsStone"
+ INVOKEVIRTUAL net/minecraft/block/BlockStairs.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L73
+ LINENUMBER 312 L73
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 68
+ LDC "wall_sign"
+ NEW net/minecraft/block/BlockSign
+ DUP
+ LDC Lnet/minecraft/tileentity/TileEntitySign;.class
+ ICONST_0
+ INVOKESPECIAL net/minecraft/block/BlockSign. (Ljava/lang/Class;Z)V
+ FCONST_1
+ INVOKEVIRTUAL net/minecraft/block/BlockSign.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeWood : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "sign"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/block/Block.disableStats ()Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L74
+ LINENUMBER 313 L74
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 69
+ LDC "lever"
+ NEW net/minecraft/block/BlockLever
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockLever. ()V
+ LDC 0.5
+ INVOKEVIRTUAL net/minecraft/block/BlockLever.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeWood : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "lever"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "lever"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L75
+ LINENUMBER 314 L75
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 70
+ LDC "stone_pressure_plate"
+ NEW net/minecraft/block/BlockPressurePlate
+ DUP
+ LDC "stone"
+ GETSTATIC net/minecraft/block/material/Material.rock : Lnet/minecraft/block/material/Material;
+ GETSTATIC net/minecraft/block/BlockPressurePlate$Sensitivity.mobs : Lnet/minecraft/block/BlockPressurePlate$Sensitivity;
+ INVOKESPECIAL net/minecraft/block/BlockPressurePlate. (Ljava/lang/String;Lnet/minecraft/block/material/Material;Lnet/minecraft/block/BlockPressurePlate$Sensitivity;)V
+ LDC 0.5
+ INVOKEVIRTUAL net/minecraft/block/BlockPressurePlate.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypePiston : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "pressurePlate"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L76
+ LINENUMBER 315 L76
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 71
+ LDC "iron_door"
+ NEW net/minecraft/block/BlockDoor
+ DUP
+ GETSTATIC net/minecraft/block/material/Material.iron : Lnet/minecraft/block/material/Material;
+ INVOKESPECIAL net/minecraft/block/BlockDoor. (Lnet/minecraft/block/material/Material;)V
+ LDC 5.0
+ INVOKEVIRTUAL net/minecraft/block/BlockDoor.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeMetal : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "doorIron"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/block/Block.disableStats ()Lnet/minecraft/block/Block;
+ LDC "door_iron"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L77
+ LINENUMBER 316 L77
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 72
+ LDC "wooden_pressure_plate"
+ NEW net/minecraft/block/BlockPressurePlate
+ DUP
+ LDC "planks_oak"
+ GETSTATIC net/minecraft/block/material/Material.wood : Lnet/minecraft/block/material/Material;
+ GETSTATIC net/minecraft/block/BlockPressurePlate$Sensitivity.everything : Lnet/minecraft/block/BlockPressurePlate$Sensitivity;
+ INVOKESPECIAL net/minecraft/block/BlockPressurePlate. (Ljava/lang/String;Lnet/minecraft/block/material/Material;Lnet/minecraft/block/BlockPressurePlate$Sensitivity;)V
+ LDC 0.5
+ INVOKEVIRTUAL net/minecraft/block/BlockPressurePlate.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeWood : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "pressurePlate"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L78
+ LINENUMBER 317 L78
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 73
+ LDC "redstone_ore"
+ NEW net/minecraft/block/BlockRedstoneOre
+ DUP
+ ICONST_0
+ INVOKESPECIAL net/minecraft/block/BlockRedstoneOre. (Z)V
+ LDC 3.0
+ INVOKEVIRTUAL net/minecraft/block/BlockRedstoneOre.setHardness (F)Lnet/minecraft/block/Block;
+ LDC 5.0
+ INVOKEVIRTUAL net/minecraft/block/Block.setResistance (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypePiston : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "oreRedstone"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/creativetab/CreativeTabs.tabBlock : Lnet/minecraft/creativetab/CreativeTabs;
+ INVOKEVIRTUAL net/minecraft/block/Block.setCreativeTab (Lnet/minecraft/creativetab/CreativeTabs;)Lnet/minecraft/block/Block;
+ LDC "redstone_ore"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L79
+ LINENUMBER 318 L79
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 74
+ LDC "lit_redstone_ore"
+ NEW net/minecraft/block/BlockRedstoneOre
+ DUP
+ ICONST_1
+ INVOKESPECIAL net/minecraft/block/BlockRedstoneOre. (Z)V
+ LDC 0.625
+ INVOKEVIRTUAL net/minecraft/block/BlockRedstoneOre.setLightLevel (F)Lnet/minecraft/block/Block;
+ LDC 3.0
+ INVOKEVIRTUAL net/minecraft/block/Block.setHardness (F)Lnet/minecraft/block/Block;
+ LDC 5.0
+ INVOKEVIRTUAL net/minecraft/block/Block.setResistance (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypePiston : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "oreRedstone"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "redstone_ore"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L80
+ LINENUMBER 319 L80
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 75
+ LDC "unlit_redstone_torch"
+ NEW net/minecraft/block/BlockRedstoneTorch
+ DUP
+ ICONST_0
+ INVOKESPECIAL net/minecraft/block/BlockRedstoneTorch. (Z)V
+ FCONST_0
+ INVOKEVIRTUAL net/minecraft/block/BlockRedstoneTorch.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeWood : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "notGate"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "redstone_torch_off"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L81
+ LINENUMBER 320 L81
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 76
+ LDC "redstone_torch"
+ NEW net/minecraft/block/BlockRedstoneTorch
+ DUP
+ ICONST_1
+ INVOKESPECIAL net/minecraft/block/BlockRedstoneTorch. (Z)V
+ FCONST_0
+ INVOKEVIRTUAL net/minecraft/block/BlockRedstoneTorch.setHardness (F)Lnet/minecraft/block/Block;
+ LDC 0.5
+ INVOKEVIRTUAL net/minecraft/block/Block.setLightLevel (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeWood : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "notGate"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/creativetab/CreativeTabs.tabRedstone : Lnet/minecraft/creativetab/CreativeTabs;
+ INVOKEVIRTUAL net/minecraft/block/Block.setCreativeTab (Lnet/minecraft/creativetab/CreativeTabs;)Lnet/minecraft/block/Block;
+ LDC "redstone_torch_on"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L82
+ LINENUMBER 321 L82
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 77
+ LDC "stone_button"
+ NEW net/minecraft/block/BlockButtonStone
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockButtonStone. ()V
+ LDC 0.5
+ INVOKEVIRTUAL net/minecraft/block/BlockButtonStone.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypePiston : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "button"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L83
+ LINENUMBER 322 L83
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 78
+ LDC "snow_layer"
+ NEW net/minecraft/block/BlockSnow
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockSnow. ()V
+ LDC 0.1
+ INVOKEVIRTUAL net/minecraft/block/BlockSnow.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeSnow : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "snow"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ ICONST_0
+ INVOKEVIRTUAL net/minecraft/block/Block.setLightOpacity (I)Lnet/minecraft/block/Block;
+ LDC "snow"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L84
+ LINENUMBER 323 L84
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 79
+ LDC "ice"
+ NEW net/minecraft/block/BlockIce
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockIce. ()V
+ LDC 0.5
+ INVOKEVIRTUAL net/minecraft/block/BlockIce.setHardness (F)Lnet/minecraft/block/Block;
+ ICONST_3
+ INVOKEVIRTUAL net/minecraft/block/Block.setLightOpacity (I)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeGlass : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "ice"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "ice"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L85
+ LINENUMBER 324 L85
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 80
+ LDC "snow"
+ NEW net/minecraft/block/BlockSnowBlock
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockSnowBlock. ()V
+ LDC 0.2
+ INVOKEVIRTUAL net/minecraft/block/BlockSnowBlock.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeSnow : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "snow"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "snow"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L86
+ LINENUMBER 325 L86
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 81
+ LDC "cactus"
+ NEW net/minecraft/block/BlockCactus
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockCactus. ()V
+ LDC 0.4
+ INVOKEVIRTUAL net/minecraft/block/BlockCactus.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeCloth : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "cactus"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "cactus"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L87
+ LINENUMBER 326 L87
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 82
+ LDC "clay"
+ NEW net/minecraft/block/BlockClay
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockClay. ()V
+ LDC 0.6
+ INVOKEVIRTUAL net/minecraft/block/BlockClay.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeGravel : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "clay"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "clay"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L88
+ LINENUMBER 327 L88
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 83
+ LDC "reeds"
+ NEW net/minecraft/block/BlockReed
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockReed. ()V
+ FCONST_0
+ INVOKEVIRTUAL net/minecraft/block/BlockReed.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeGrass : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "reeds"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/block/Block.disableStats ()Lnet/minecraft/block/Block;
+ LDC "reeds"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L89
+ LINENUMBER 328 L89
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 84
+ LDC "jukebox"
+ NEW net/minecraft/block/BlockJukebox
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockJukebox. ()V
+ FCONST_2
+ INVOKEVIRTUAL net/minecraft/block/BlockJukebox.setHardness (F)Lnet/minecraft/block/Block;
+ LDC 10.0
+ INVOKEVIRTUAL net/minecraft/block/Block.setResistance (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypePiston : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "jukebox"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "jukebox"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L90
+ LINENUMBER 329 L90
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 85
+ LDC "fence"
+ NEW net/minecraft/block/BlockFence
+ DUP
+ LDC "planks_oak"
+ GETSTATIC net/minecraft/block/material/Material.wood : Lnet/minecraft/block/material/Material;
+ INVOKESPECIAL net/minecraft/block/BlockFence. (Ljava/lang/String;Lnet/minecraft/block/material/Material;)V
+ FCONST_2
+ INVOKEVIRTUAL net/minecraft/block/BlockFence.setHardness (F)Lnet/minecraft/block/Block;
+ LDC 5.0
+ INVOKEVIRTUAL net/minecraft/block/Block.setResistance (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeWood : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "fence"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L91
+ LINENUMBER 330 L91
+ NEW net/minecraft/block/BlockPumpkin
+ DUP
+ ICONST_0
+ INVOKESPECIAL net/minecraft/block/BlockPumpkin. (Z)V
+ FCONST_1
+ INVOKEVIRTUAL net/minecraft/block/BlockPumpkin.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeWood : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "pumpkin"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "pumpkin"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ ASTORE 5
+ L92
+ LINENUMBER 331 L92
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 86
+ LDC "pumpkin"
+ ALOAD 5
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L93
+ LINENUMBER 332 L93
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 87
+ LDC "netherrack"
+ NEW net/minecraft/block/BlockNetherrack
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockNetherrack. ()V
+ LDC 0.4
+ INVOKEVIRTUAL net/minecraft/block/BlockNetherrack.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypePiston : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "hellrock"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "netherrack"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L94
+ LINENUMBER 333 L94
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 88
+ LDC "soul_sand"
+ NEW net/minecraft/block/BlockSoulSand
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockSoulSand. ()V
+ LDC 0.5
+ INVOKEVIRTUAL net/minecraft/block/BlockSoulSand.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeSand : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "hellsand"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "soul_sand"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L95
+ LINENUMBER 334 L95
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 89
+ LDC "glowstone"
+ NEW net/minecraft/block/BlockGlowstone
+ DUP
+ GETSTATIC net/minecraft/block/material/Material.glass : Lnet/minecraft/block/material/Material;
+ INVOKESPECIAL net/minecraft/block/BlockGlowstone. (Lnet/minecraft/block/material/Material;)V
+ LDC 0.3
+ INVOKEVIRTUAL net/minecraft/block/BlockGlowstone.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeGlass : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ FCONST_1
+ INVOKEVIRTUAL net/minecraft/block/Block.setLightLevel (F)Lnet/minecraft/block/Block;
+ LDC "lightgem"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "glowstone"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L96
+ LINENUMBER 335 L96
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 90
+ LDC "portal"
+ NEW net/minecraft/block/BlockPortal
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockPortal. ()V
+ LDC -1.0
+ INVOKEVIRTUAL net/minecraft/block/BlockPortal.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeGlass : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC 0.75
+ INVOKEVIRTUAL net/minecraft/block/Block.setLightLevel (F)Lnet/minecraft/block/Block;
+ LDC "portal"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "portal"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L97
+ LINENUMBER 336 L97
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 91
+ LDC "lit_pumpkin"
+ NEW net/minecraft/block/BlockPumpkin
+ DUP
+ ICONST_1
+ INVOKESPECIAL net/minecraft/block/BlockPumpkin. (Z)V
+ FCONST_1
+ INVOKEVIRTUAL net/minecraft/block/BlockPumpkin.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeWood : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ FCONST_1
+ INVOKEVIRTUAL net/minecraft/block/Block.setLightLevel (F)Lnet/minecraft/block/Block;
+ LDC "litpumpkin"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "pumpkin"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L98
+ LINENUMBER 337 L98
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 92
+ LDC "cake"
+ NEW net/minecraft/block/BlockCake
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockCake. ()V
+ LDC 0.5
+ INVOKEVIRTUAL net/minecraft/block/BlockCake.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeCloth : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "cake"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/block/Block.disableStats ()Lnet/minecraft/block/Block;
+ LDC "cake"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L99
+ LINENUMBER 338 L99
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 93
+ LDC "unpowered_repeater"
+ NEW net/minecraft/block/BlockRedstoneRepeater
+ DUP
+ ICONST_0
+ INVOKESPECIAL net/minecraft/block/BlockRedstoneRepeater. (Z)V
+ FCONST_0
+ INVOKEVIRTUAL net/minecraft/block/BlockRedstoneRepeater.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeWood : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "diode"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/block/Block.disableStats ()Lnet/minecraft/block/Block;
+ LDC "repeater_off"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L100
+ LINENUMBER 339 L100
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 94
+ LDC "powered_repeater"
+ NEW net/minecraft/block/BlockRedstoneRepeater
+ DUP
+ ICONST_1
+ INVOKESPECIAL net/minecraft/block/BlockRedstoneRepeater. (Z)V
+ FCONST_0
+ INVOKEVIRTUAL net/minecraft/block/BlockRedstoneRepeater.setHardness (F)Lnet/minecraft/block/Block;
+ LDC 0.625
+ INVOKEVIRTUAL net/minecraft/block/Block.setLightLevel (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeWood : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "diode"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/block/Block.disableStats ()Lnet/minecraft/block/Block;
+ LDC "repeater_on"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L101
+ LINENUMBER 340 L101
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 95
+ LDC "stained_glass"
+ NEW net/minecraft/block/BlockStainedGlass
+ DUP
+ GETSTATIC net/minecraft/block/material/Material.glass : Lnet/minecraft/block/material/Material;
+ INVOKESPECIAL net/minecraft/block/BlockStainedGlass. (Lnet/minecraft/block/material/Material;)V
+ LDC 0.3
+ INVOKEVIRTUAL net/minecraft/block/BlockStainedGlass.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeGlass : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "stainedGlass"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "glass"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L102
+ LINENUMBER 341 L102
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 96
+ LDC "trapdoor"
+ NEW net/minecraft/block/BlockTrapDoor
+ DUP
+ GETSTATIC net/minecraft/block/material/Material.wood : Lnet/minecraft/block/material/Material;
+ INVOKESPECIAL net/minecraft/block/BlockTrapDoor. (Lnet/minecraft/block/material/Material;)V
+ LDC 3.0
+ INVOKEVIRTUAL net/minecraft/block/BlockTrapDoor.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeWood : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "trapdoor"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/block/Block.disableStats ()Lnet/minecraft/block/Block;
+ LDC "trapdoor"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L103
+ LINENUMBER 342 L103
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 97
+ LDC "monster_egg"
+ NEW net/minecraft/block/BlockSilverfish
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockSilverfish. ()V
+ LDC 0.75
+ INVOKEVIRTUAL net/minecraft/block/BlockSilverfish.setHardness (F)Lnet/minecraft/block/Block;
+ LDC "monsterStoneEgg"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L104
+ LINENUMBER 343 L104
+ NEW net/minecraft/block/BlockStoneBrick
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockStoneBrick. ()V
+ LDC 1.5
+ INVOKEVIRTUAL net/minecraft/block/BlockStoneBrick.setHardness (F)Lnet/minecraft/block/Block;
+ LDC 10.0
+ INVOKEVIRTUAL net/minecraft/block/Block.setResistance (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypePiston : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "stonebricksmooth"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "stonebrick"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ ASTORE 6
+ L105
+ LINENUMBER 344 L105
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 98
+ LDC "stonebrick"
+ ALOAD 6
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L106
+ LINENUMBER 345 L106
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 99
+ LDC "brown_mushroom_block"
+ NEW net/minecraft/block/BlockHugeMushroom
+ DUP
+ GETSTATIC net/minecraft/block/material/Material.wood : Lnet/minecraft/block/material/Material;
+ ICONST_0
+ INVOKESPECIAL net/minecraft/block/BlockHugeMushroom. (Lnet/minecraft/block/material/Material;I)V
+ LDC 0.2
+ INVOKEVIRTUAL net/minecraft/block/BlockHugeMushroom.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeWood : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "mushroom"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "mushroom_block"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L107
+ LINENUMBER 346 L107
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 100
+ LDC "red_mushroom_block"
+ NEW net/minecraft/block/BlockHugeMushroom
+ DUP
+ GETSTATIC net/minecraft/block/material/Material.wood : Lnet/minecraft/block/material/Material;
+ ICONST_1
+ INVOKESPECIAL net/minecraft/block/BlockHugeMushroom. (Lnet/minecraft/block/material/Material;I)V
+ LDC 0.2
+ INVOKEVIRTUAL net/minecraft/block/BlockHugeMushroom.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeWood : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "mushroom"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "mushroom_block"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L108
+ LINENUMBER 347 L108
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 101
+ LDC "iron_bars"
+ NEW net/minecraft/block/BlockPane
+ DUP
+ LDC "iron_bars"
+ LDC "iron_bars"
+ GETSTATIC net/minecraft/block/material/Material.iron : Lnet/minecraft/block/material/Material;
+ ICONST_1
+ INVOKESPECIAL net/minecraft/block/BlockPane. (Ljava/lang/String;Ljava/lang/String;Lnet/minecraft/block/material/Material;Z)V
+ LDC 5.0
+ INVOKEVIRTUAL net/minecraft/block/BlockPane.setHardness (F)Lnet/minecraft/block/Block;
+ LDC 10.0
+ INVOKEVIRTUAL net/minecraft/block/Block.setResistance (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeMetal : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "fenceIron"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L109
+ LINENUMBER 348 L109
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 102
+ LDC "glass_pane"
+ NEW net/minecraft/block/BlockPane
+ DUP
+ LDC "glass"
+ LDC "glass_pane_top"
+ GETSTATIC net/minecraft/block/material/Material.glass : Lnet/minecraft/block/material/Material;
+ ICONST_0
+ INVOKESPECIAL net/minecraft/block/BlockPane. (Ljava/lang/String;Ljava/lang/String;Lnet/minecraft/block/material/Material;Z)V
+ LDC 0.3
+ INVOKEVIRTUAL net/minecraft/block/BlockPane.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeGlass : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "thinGlass"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L110
+ LINENUMBER 349 L110
+ NEW net/minecraft/block/BlockMelon
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockMelon. ()V
+ FCONST_1
+ INVOKEVIRTUAL net/minecraft/block/BlockMelon.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeWood : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "melon"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "melon"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ ASTORE 7
+ L111
+ LINENUMBER 350 L111
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 103
+ LDC "melon_block"
+ ALOAD 7
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L112
+ LINENUMBER 351 L112
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 104
+ LDC "pumpkin_stem"
+ NEW net/minecraft/block/BlockStem
+ DUP
+ ALOAD 5
+ INVOKESPECIAL net/minecraft/block/BlockStem. (Lnet/minecraft/block/Block;)V
+ FCONST_0
+ INVOKEVIRTUAL net/minecraft/block/BlockStem.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeWood : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "pumpkinStem"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "pumpkin_stem"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L113
+ LINENUMBER 352 L113
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 105
+ LDC "melon_stem"
+ NEW net/minecraft/block/BlockStem
+ DUP
+ ALOAD 7
+ INVOKESPECIAL net/minecraft/block/BlockStem. (Lnet/minecraft/block/Block;)V
+ FCONST_0
+ INVOKEVIRTUAL net/minecraft/block/BlockStem.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeWood : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "pumpkinStem"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "melon_stem"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L114
+ LINENUMBER 353 L114
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 106
+ LDC "vine"
+ NEW net/minecraft/block/BlockVine
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockVine. ()V
+ LDC 0.2
+ INVOKEVIRTUAL net/minecraft/block/BlockVine.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeGrass : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "vine"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "vine"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L115
+ LINENUMBER 354 L115
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 107
+ LDC "fence_gate"
+ NEW net/minecraft/block/BlockFenceGate
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockFenceGate. ()V
+ FCONST_2
+ INVOKEVIRTUAL net/minecraft/block/BlockFenceGate.setHardness (F)Lnet/minecraft/block/Block;
+ LDC 5.0
+ INVOKEVIRTUAL net/minecraft/block/Block.setResistance (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeWood : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "fenceGate"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L116
+ LINENUMBER 355 L116
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 108
+ LDC "brick_stairs"
+ NEW net/minecraft/block/BlockStairs
+ DUP
+ ALOAD 3
+ ICONST_0
+ INVOKESPECIAL net/minecraft/block/BlockStairs. (Lnet/minecraft/block/Block;I)V
+ LDC "stairsBrick"
+ INVOKEVIRTUAL net/minecraft/block/BlockStairs.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L117
+ LINENUMBER 356 L117
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 109
+ LDC "stone_brick_stairs"
+ NEW net/minecraft/block/BlockStairs
+ DUP
+ ALOAD 6
+ ICONST_0
+ INVOKESPECIAL net/minecraft/block/BlockStairs. (Lnet/minecraft/block/Block;I)V
+ LDC "stairsStoneBrickSmooth"
+ INVOKEVIRTUAL net/minecraft/block/BlockStairs.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L118
+ LINENUMBER 357 L118
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 110
+ LDC "mycelium"
+ NEW net/minecraft/block/BlockMycelium
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockMycelium. ()V
+ LDC 0.6
+ INVOKEVIRTUAL net/minecraft/block/BlockMycelium.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeGrass : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "mycel"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "mycelium"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L119
+ LINENUMBER 358 L119
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 111
+ LDC "waterlily"
+ NEW net/minecraft/block/BlockLilyPad
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockLilyPad. ()V
+ FCONST_0
+ INVOKEVIRTUAL net/minecraft/block/BlockLilyPad.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeGrass : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "waterlily"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "waterlily"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L120
+ LINENUMBER 359 L120
+ NEW net/minecraft/block/Block
+ DUP
+ GETSTATIC net/minecraft/block/material/Material.rock : Lnet/minecraft/block/material/Material;
+ INVOKESPECIAL net/minecraft/block/Block. (Lnet/minecraft/block/material/Material;)V
+ FCONST_2
+ INVOKEVIRTUAL net/minecraft/block/Block.setHardness (F)Lnet/minecraft/block/Block;
+ LDC 10.0
+ INVOKEVIRTUAL net/minecraft/block/Block.setResistance (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypePiston : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "netherBrick"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/creativetab/CreativeTabs.tabBlock : Lnet/minecraft/creativetab/CreativeTabs;
+ INVOKEVIRTUAL net/minecraft/block/Block.setCreativeTab (Lnet/minecraft/creativetab/CreativeTabs;)Lnet/minecraft/block/Block;
+ LDC "nether_brick"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ ASTORE 8
+ L121
+ LINENUMBER 360 L121
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 112
+ LDC "nether_brick"
+ ALOAD 8
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L122
+ LINENUMBER 361 L122
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 113
+ LDC "nether_brick_fence"
+ NEW net/minecraft/block/BlockFence
+ DUP
+ LDC "nether_brick"
+ GETSTATIC net/minecraft/block/material/Material.rock : Lnet/minecraft/block/material/Material;
+ INVOKESPECIAL net/minecraft/block/BlockFence. (Ljava/lang/String;Lnet/minecraft/block/material/Material;)V
+ FCONST_2
+ INVOKEVIRTUAL net/minecraft/block/BlockFence.setHardness (F)Lnet/minecraft/block/Block;
+ LDC 10.0
+ INVOKEVIRTUAL net/minecraft/block/Block.setResistance (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypePiston : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "netherFence"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L123
+ LINENUMBER 362 L123
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 114
+ LDC "nether_brick_stairs"
+ NEW net/minecraft/block/BlockStairs
+ DUP
+ ALOAD 8
+ ICONST_0
+ INVOKESPECIAL net/minecraft/block/BlockStairs. (Lnet/minecraft/block/Block;I)V
+ LDC "stairsNetherBrick"
+ INVOKEVIRTUAL net/minecraft/block/BlockStairs.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L124
+ LINENUMBER 363 L124
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 115
+ LDC "nether_wart"
+ NEW net/minecraft/block/BlockNetherWart
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockNetherWart. ()V
+ LDC "netherStalk"
+ INVOKEVIRTUAL net/minecraft/block/BlockNetherWart.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "nether_wart"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L125
+ LINENUMBER 364 L125
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 116
+ LDC "enchanting_table"
+ NEW net/minecraft/block/BlockEnchantmentTable
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockEnchantmentTable. ()V
+ LDC 5.0
+ INVOKEVIRTUAL net/minecraft/block/BlockEnchantmentTable.setHardness (F)Lnet/minecraft/block/Block;
+ LDC 2000.0
+ INVOKEVIRTUAL net/minecraft/block/Block.setResistance (F)Lnet/minecraft/block/Block;
+ LDC "enchantmentTable"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "enchanting_table"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L126
+ LINENUMBER 365 L126
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 117
+ LDC "brewing_stand"
+ NEW net/minecraft/block/BlockBrewingStand
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockBrewingStand. ()V
+ LDC 0.5
+ INVOKEVIRTUAL net/minecraft/block/BlockBrewingStand.setHardness (F)Lnet/minecraft/block/Block;
+ LDC 0.125
+ INVOKEVIRTUAL net/minecraft/block/Block.setLightLevel (F)Lnet/minecraft/block/Block;
+ LDC "brewingStand"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "brewing_stand"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L127
+ LINENUMBER 366 L127
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 118
+ LDC "cauldron"
+ NEW net/minecraft/block/BlockCauldron
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockCauldron. ()V
+ FCONST_2
+ INVOKEVIRTUAL net/minecraft/block/BlockCauldron.setHardness (F)Lnet/minecraft/block/Block;
+ LDC "cauldron"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "cauldron"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L128
+ LINENUMBER 367 L128
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 119
+ LDC "end_portal"
+ NEW net/minecraft/block/BlockEndPortal
+ DUP
+ GETSTATIC net/minecraft/block/material/Material.portal : Lnet/minecraft/block/material/Material;
+ INVOKESPECIAL net/minecraft/block/BlockEndPortal. (Lnet/minecraft/block/material/Material;)V
+ LDC -1.0
+ INVOKEVIRTUAL net/minecraft/block/BlockEndPortal.setHardness (F)Lnet/minecraft/block/Block;
+ LDC 6000000.0
+ INVOKEVIRTUAL net/minecraft/block/Block.setResistance (F)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L129
+ LINENUMBER 368 L129
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 120
+ LDC "end_portal_frame"
+ NEW net/minecraft/block/BlockEndPortalFrame
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockEndPortalFrame. ()V
+ GETSTATIC net/minecraft/block/Block.soundTypeGlass : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/BlockEndPortalFrame.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC 0.125
+ INVOKEVIRTUAL net/minecraft/block/Block.setLightLevel (F)Lnet/minecraft/block/Block;
+ LDC -1.0
+ INVOKEVIRTUAL net/minecraft/block/Block.setHardness (F)Lnet/minecraft/block/Block;
+ LDC "endPortalFrame"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC 6000000.0
+ INVOKEVIRTUAL net/minecraft/block/Block.setResistance (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/creativetab/CreativeTabs.tabDecorations : Lnet/minecraft/creativetab/CreativeTabs;
+ INVOKEVIRTUAL net/minecraft/block/Block.setCreativeTab (Lnet/minecraft/creativetab/CreativeTabs;)Lnet/minecraft/block/Block;
+ LDC "endframe"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L130
+ LINENUMBER 369 L130
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 121
+ LDC "end_stone"
+ NEW net/minecraft/block/Block
+ DUP
+ GETSTATIC net/minecraft/block/material/Material.rock : Lnet/minecraft/block/material/Material;
+ INVOKESPECIAL net/minecraft/block/Block. (Lnet/minecraft/block/material/Material;)V
+ LDC 3.0
+ INVOKEVIRTUAL net/minecraft/block/Block.setHardness (F)Lnet/minecraft/block/Block;
+ LDC 15.0
+ INVOKEVIRTUAL net/minecraft/block/Block.setResistance (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypePiston : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "whiteStone"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/creativetab/CreativeTabs.tabBlock : Lnet/minecraft/creativetab/CreativeTabs;
+ INVOKEVIRTUAL net/minecraft/block/Block.setCreativeTab (Lnet/minecraft/creativetab/CreativeTabs;)Lnet/minecraft/block/Block;
+ LDC "end_stone"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L131
+ LINENUMBER 370 L131
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 122
+ LDC "dragon_egg"
+ NEW net/minecraft/block/BlockDragonEgg
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockDragonEgg. ()V
+ LDC 3.0
+ INVOKEVIRTUAL net/minecraft/block/BlockDragonEgg.setHardness (F)Lnet/minecraft/block/Block;
+ LDC 15.0
+ INVOKEVIRTUAL net/minecraft/block/Block.setResistance (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypePiston : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC 0.125
+ INVOKEVIRTUAL net/minecraft/block/Block.setLightLevel (F)Lnet/minecraft/block/Block;
+ LDC "dragonEgg"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "dragon_egg"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L132
+ LINENUMBER 371 L132
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 123
+ LDC "redstone_lamp"
+ NEW net/minecraft/block/BlockRedstoneLight
+ DUP
+ ICONST_0
+ INVOKESPECIAL net/minecraft/block/BlockRedstoneLight. (Z)V
+ LDC 0.3
+ INVOKEVIRTUAL net/minecraft/block/BlockRedstoneLight.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeGlass : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "redstoneLight"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/creativetab/CreativeTabs.tabRedstone : Lnet/minecraft/creativetab/CreativeTabs;
+ INVOKEVIRTUAL net/minecraft/block/Block.setCreativeTab (Lnet/minecraft/creativetab/CreativeTabs;)Lnet/minecraft/block/Block;
+ LDC "redstone_lamp_off"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L133
+ LINENUMBER 372 L133
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 124
+ LDC "lit_redstone_lamp"
+ NEW net/minecraft/block/BlockRedstoneLight
+ DUP
+ ICONST_1
+ INVOKESPECIAL net/minecraft/block/BlockRedstoneLight. (Z)V
+ LDC 0.3
+ INVOKEVIRTUAL net/minecraft/block/BlockRedstoneLight.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeGlass : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "redstoneLight"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "redstone_lamp_on"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L134
+ LINENUMBER 373 L134
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 125
+ LDC "double_wooden_slab"
+ NEW net/minecraft/block/BlockWoodSlab
+ DUP
+ ICONST_1
+ INVOKESPECIAL net/minecraft/block/BlockWoodSlab. (Z)V
+ FCONST_2
+ INVOKEVIRTUAL net/minecraft/block/BlockWoodSlab.setHardness (F)Lnet/minecraft/block/Block;
+ LDC 5.0
+ INVOKEVIRTUAL net/minecraft/block/Block.setResistance (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeWood : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "woodSlab"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L135
+ LINENUMBER 374 L135
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 126
+ LDC "wooden_slab"
+ NEW net/minecraft/block/BlockWoodSlab
+ DUP
+ ICONST_0
+ INVOKESPECIAL net/minecraft/block/BlockWoodSlab. (Z)V
+ FCONST_2
+ INVOKEVIRTUAL net/minecraft/block/BlockWoodSlab.setHardness (F)Lnet/minecraft/block/Block;
+ LDC 5.0
+ INVOKEVIRTUAL net/minecraft/block/Block.setResistance (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeWood : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "woodSlab"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L136
+ LINENUMBER 375 L136
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ BIPUSH 127
+ LDC "cocoa"
+ NEW net/minecraft/block/BlockCocoa
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockCocoa. ()V
+ LDC 0.2
+ INVOKEVIRTUAL net/minecraft/block/BlockCocoa.setHardness (F)Lnet/minecraft/block/Block;
+ LDC 5.0
+ INVOKEVIRTUAL net/minecraft/block/Block.setResistance (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeWood : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "cocoa"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "cocoa"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L137
+ LINENUMBER 376 L137
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ SIPUSH 128
+ LDC "sandstone_stairs"
+ NEW net/minecraft/block/BlockStairs
+ DUP
+ ALOAD 2
+ ICONST_0
+ INVOKESPECIAL net/minecraft/block/BlockStairs. (Lnet/minecraft/block/Block;I)V
+ LDC "stairsSandStone"
+ INVOKEVIRTUAL net/minecraft/block/BlockStairs.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L138
+ LINENUMBER 377 L138
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ SIPUSH 129
+ LDC "emerald_ore"
+ NEW net/minecraft/block/BlockOre
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockOre. ()V
+ LDC 3.0
+ INVOKEVIRTUAL net/minecraft/block/BlockOre.setHardness (F)Lnet/minecraft/block/Block;
+ LDC 5.0
+ INVOKEVIRTUAL net/minecraft/block/Block.setResistance (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypePiston : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "oreEmerald"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "emerald_ore"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L139
+ LINENUMBER 378 L139
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ SIPUSH 130
+ LDC "ender_chest"
+ NEW net/minecraft/block/BlockEnderChest
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockEnderChest. ()V
+ LDC 22.5
+ INVOKEVIRTUAL net/minecraft/block/BlockEnderChest.setHardness (F)Lnet/minecraft/block/Block;
+ LDC 1000.0
+ INVOKEVIRTUAL net/minecraft/block/Block.setResistance (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypePiston : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "enderChest"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC 0.5
+ INVOKEVIRTUAL net/minecraft/block/Block.setLightLevel (F)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L140
+ LINENUMBER 379 L140
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ SIPUSH 131
+ LDC "tripwire_hook"
+ NEW net/minecraft/block/BlockTripWireHook
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockTripWireHook. ()V
+ LDC "tripWireSource"
+ INVOKEVIRTUAL net/minecraft/block/BlockTripWireHook.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "trip_wire_source"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L141
+ LINENUMBER 380 L141
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ SIPUSH 132
+ LDC "tripwire"
+ NEW net/minecraft/block/BlockTripWire
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockTripWire. ()V
+ LDC "tripWire"
+ INVOKEVIRTUAL net/minecraft/block/BlockTripWire.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "trip_wire"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L142
+ LINENUMBER 381 L142
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ SIPUSH 133
+ LDC "emerald_block"
+ NEW net/minecraft/block/BlockCompressed
+ DUP
+ GETSTATIC net/minecraft/block/material/MapColor.emeraldColor : Lnet/minecraft/block/material/MapColor;
+ INVOKESPECIAL net/minecraft/block/BlockCompressed. (Lnet/minecraft/block/material/MapColor;)V
+ LDC 5.0
+ INVOKEVIRTUAL net/minecraft/block/BlockCompressed.setHardness (F)Lnet/minecraft/block/Block;
+ LDC 10.0
+ INVOKEVIRTUAL net/minecraft/block/Block.setResistance (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeMetal : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "blockEmerald"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "emerald_block"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L143
+ LINENUMBER 382 L143
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ SIPUSH 134
+ LDC "spruce_stairs"
+ NEW net/minecraft/block/BlockStairs
+ DUP
+ ALOAD 1
+ ICONST_1
+ INVOKESPECIAL net/minecraft/block/BlockStairs. (Lnet/minecraft/block/Block;I)V
+ LDC "stairsWoodSpruce"
+ INVOKEVIRTUAL net/minecraft/block/BlockStairs.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L144
+ LINENUMBER 383 L144
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ SIPUSH 135
+ LDC "birch_stairs"
+ NEW net/minecraft/block/BlockStairs
+ DUP
+ ALOAD 1
+ ICONST_2
+ INVOKESPECIAL net/minecraft/block/BlockStairs. (Lnet/minecraft/block/Block;I)V
+ LDC "stairsWoodBirch"
+ INVOKEVIRTUAL net/minecraft/block/BlockStairs.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L145
+ LINENUMBER 384 L145
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ SIPUSH 136
+ LDC "jungle_stairs"
+ NEW net/minecraft/block/BlockStairs
+ DUP
+ ALOAD 1
+ ICONST_3
+ INVOKESPECIAL net/minecraft/block/BlockStairs. (Lnet/minecraft/block/Block;I)V
+ LDC "stairsWoodJungle"
+ INVOKEVIRTUAL net/minecraft/block/BlockStairs.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L146
+ LINENUMBER 385 L146
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ SIPUSH 137
+ LDC "command_block"
+ NEW net/minecraft/block/BlockCommandBlock
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockCommandBlock. ()V
+ INVOKEVIRTUAL net/minecraft/block/BlockCommandBlock.setBlockUnbreakable ()Lnet/minecraft/block/Block;
+ LDC 6000000.0
+ INVOKEVIRTUAL net/minecraft/block/Block.setResistance (F)Lnet/minecraft/block/Block;
+ LDC "commandBlock"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "command_block"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L147
+ LINENUMBER 386 L147
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ SIPUSH 138
+ LDC "beacon"
+ NEW net/minecraft/block/BlockBeacon
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockBeacon. ()V
+ LDC "beacon"
+ INVOKEVIRTUAL net/minecraft/block/BlockBeacon.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ FCONST_1
+ INVOKEVIRTUAL net/minecraft/block/Block.setLightLevel (F)Lnet/minecraft/block/Block;
+ LDC "beacon"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L148
+ LINENUMBER 387 L148
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ SIPUSH 139
+ LDC "cobblestone_wall"
+ NEW net/minecraft/block/BlockWall
+ DUP
+ ALOAD 0
+ INVOKESPECIAL net/minecraft/block/BlockWall. (Lnet/minecraft/block/Block;)V
+ LDC "cobbleWall"
+ INVOKEVIRTUAL net/minecraft/block/BlockWall.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L149
+ LINENUMBER 388 L149
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ SIPUSH 140
+ LDC "flower_pot"
+ NEW net/minecraft/block/BlockFlowerPot
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockFlowerPot. ()V
+ FCONST_0
+ INVOKEVIRTUAL net/minecraft/block/BlockFlowerPot.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeStone : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "flowerPot"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "flower_pot"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L150
+ LINENUMBER 389 L150
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ SIPUSH 141
+ LDC "carrots"
+ NEW net/minecraft/block/BlockCarrot
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockCarrot. ()V
+ LDC "carrots"
+ INVOKEVIRTUAL net/minecraft/block/BlockCarrot.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "carrots"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L151
+ LINENUMBER 390 L151
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ SIPUSH 142
+ LDC "potatoes"
+ NEW net/minecraft/block/BlockPotato
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockPotato. ()V
+ LDC "potatoes"
+ INVOKEVIRTUAL net/minecraft/block/BlockPotato.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "potatoes"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L152
+ LINENUMBER 391 L152
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ SIPUSH 143
+ LDC "wooden_button"
+ NEW net/minecraft/block/BlockButtonWood
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockButtonWood. ()V
+ LDC 0.5
+ INVOKEVIRTUAL net/minecraft/block/BlockButtonWood.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeWood : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "button"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L153
+ LINENUMBER 392 L153
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ SIPUSH 144
+ LDC "skull"
+ NEW net/minecraft/block/BlockSkull
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockSkull. ()V
+ FCONST_1
+ INVOKEVIRTUAL net/minecraft/block/BlockSkull.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypePiston : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "skull"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "skull"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L154
+ LINENUMBER 393 L154
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ SIPUSH 145
+ LDC "anvil"
+ NEW net/minecraft/block/BlockAnvil
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockAnvil. ()V
+ LDC 5.0
+ INVOKEVIRTUAL net/minecraft/block/BlockAnvil.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeAnvil : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC 2000.0
+ INVOKEVIRTUAL net/minecraft/block/Block.setResistance (F)Lnet/minecraft/block/Block;
+ LDC "anvil"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L155
+ LINENUMBER 394 L155
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ SIPUSH 146
+ LDC "trapped_chest"
+ NEW net/minecraft/block/BlockChest
+ DUP
+ ICONST_1
+ INVOKESPECIAL net/minecraft/block/BlockChest. (I)V
+ LDC 2.5
+ INVOKEVIRTUAL net/minecraft/block/BlockChest.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeWood : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "chestTrap"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L156
+ LINENUMBER 395 L156
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ SIPUSH 147
+ LDC "light_weighted_pressure_plate"
+ NEW net/minecraft/block/BlockPressurePlateWeighted
+ DUP
+ LDC "gold_block"
+ GETSTATIC net/minecraft/block/material/Material.iron : Lnet/minecraft/block/material/Material;
+ BIPUSH 15
+ INVOKESPECIAL net/minecraft/block/BlockPressurePlateWeighted. (Ljava/lang/String;Lnet/minecraft/block/material/Material;I)V
+ LDC 0.5
+ INVOKEVIRTUAL net/minecraft/block/BlockPressurePlateWeighted.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeWood : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "weightedPlate_light"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L157
+ LINENUMBER 396 L157
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ SIPUSH 148
+ LDC "heavy_weighted_pressure_plate"
+ NEW net/minecraft/block/BlockPressurePlateWeighted
+ DUP
+ LDC "iron_block"
+ GETSTATIC net/minecraft/block/material/Material.iron : Lnet/minecraft/block/material/Material;
+ SIPUSH 150
+ INVOKESPECIAL net/minecraft/block/BlockPressurePlateWeighted. (Ljava/lang/String;Lnet/minecraft/block/material/Material;I)V
+ LDC 0.5
+ INVOKEVIRTUAL net/minecraft/block/BlockPressurePlateWeighted.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeWood : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "weightedPlate_heavy"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L158
+ LINENUMBER 397 L158
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ SIPUSH 149
+ LDC "unpowered_comparator"
+ NEW net/minecraft/block/BlockRedstoneComparator
+ DUP
+ ICONST_0
+ INVOKESPECIAL net/minecraft/block/BlockRedstoneComparator. (Z)V
+ FCONST_0
+ INVOKEVIRTUAL net/minecraft/block/BlockRedstoneComparator.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeWood : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "comparator"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/block/Block.disableStats ()Lnet/minecraft/block/Block;
+ LDC "comparator_off"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L159
+ LINENUMBER 398 L159
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ SIPUSH 150
+ LDC "powered_comparator"
+ NEW net/minecraft/block/BlockRedstoneComparator
+ DUP
+ ICONST_1
+ INVOKESPECIAL net/minecraft/block/BlockRedstoneComparator. (Z)V
+ FCONST_0
+ INVOKEVIRTUAL net/minecraft/block/BlockRedstoneComparator.setHardness (F)Lnet/minecraft/block/Block;
+ LDC 0.625
+ INVOKEVIRTUAL net/minecraft/block/Block.setLightLevel (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeWood : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "comparator"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/block/Block.disableStats ()Lnet/minecraft/block/Block;
+ LDC "comparator_on"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L160
+ LINENUMBER 399 L160
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ SIPUSH 151
+ LDC "daylight_detector"
+ NEW net/minecraft/block/BlockDaylightDetector
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockDaylightDetector. ()V
+ LDC 0.2
+ INVOKEVIRTUAL net/minecraft/block/BlockDaylightDetector.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeWood : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "daylightDetector"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "daylight_detector"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L161
+ LINENUMBER 400 L161
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ SIPUSH 152
+ LDC "redstone_block"
+ NEW net/minecraft/block/BlockCompressedPowered
+ DUP
+ GETSTATIC net/minecraft/block/material/MapColor.tntColor : Lnet/minecraft/block/material/MapColor;
+ INVOKESPECIAL net/minecraft/block/BlockCompressedPowered. (Lnet/minecraft/block/material/MapColor;)V
+ LDC 5.0
+ INVOKEVIRTUAL net/minecraft/block/BlockCompressedPowered.setHardness (F)Lnet/minecraft/block/Block;
+ LDC 10.0
+ INVOKEVIRTUAL net/minecraft/block/Block.setResistance (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeMetal : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "blockRedstone"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "redstone_block"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L162
+ LINENUMBER 401 L162
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ SIPUSH 153
+ LDC "quartz_ore"
+ NEW net/minecraft/block/BlockOre
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockOre. ()V
+ LDC 3.0
+ INVOKEVIRTUAL net/minecraft/block/BlockOre.setHardness (F)Lnet/minecraft/block/Block;
+ LDC 5.0
+ INVOKEVIRTUAL net/minecraft/block/Block.setResistance (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypePiston : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "netherquartz"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "quartz_ore"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L163
+ LINENUMBER 402 L163
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ SIPUSH 154
+ LDC "hopper"
+ NEW net/minecraft/block/BlockHopper
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockHopper. ()V
+ LDC 3.0
+ INVOKEVIRTUAL net/minecraft/block/BlockHopper.setHardness (F)Lnet/minecraft/block/Block;
+ LDC 8.0
+ INVOKEVIRTUAL net/minecraft/block/Block.setResistance (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeWood : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "hopper"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "hopper"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L164
+ LINENUMBER 403 L164
+ NEW net/minecraft/block/BlockQuartz
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockQuartz. ()V
+ GETSTATIC net/minecraft/block/Block.soundTypePiston : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/BlockQuartz.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC 0.8
+ INVOKEVIRTUAL net/minecraft/block/Block.setHardness (F)Lnet/minecraft/block/Block;
+ LDC "quartzBlock"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "quartz_block"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ ASTORE 9
+ L165
+ LINENUMBER 404 L165
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ SIPUSH 155
+ LDC "quartz_block"
+ ALOAD 9
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L166
+ LINENUMBER 405 L166
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ SIPUSH 156
+ LDC "quartz_stairs"
+ NEW net/minecraft/block/BlockStairs
+ DUP
+ ALOAD 9
+ ICONST_0
+ INVOKESPECIAL net/minecraft/block/BlockStairs. (Lnet/minecraft/block/Block;I)V
+ LDC "stairsQuartz"
+ INVOKEVIRTUAL net/minecraft/block/BlockStairs.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L167
+ LINENUMBER 406 L167
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ SIPUSH 157
+ LDC "activator_rail"
+ NEW net/minecraft/block/BlockRailPowered
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockRailPowered. ()V
+ LDC 0.7
+ INVOKEVIRTUAL net/minecraft/block/BlockRailPowered.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeMetal : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "activatorRail"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "rail_activator"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L168
+ LINENUMBER 407 L168
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ SIPUSH 158
+ LDC "dropper"
+ NEW net/minecraft/block/BlockDropper
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockDropper. ()V
+ LDC 3.5
+ INVOKEVIRTUAL net/minecraft/block/BlockDropper.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypePiston : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "dropper"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "dropper"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L169
+ LINENUMBER 408 L169
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ SIPUSH 159
+ LDC "stained_hardened_clay"
+ NEW net/minecraft/block/BlockColored
+ DUP
+ GETSTATIC net/minecraft/block/material/Material.rock : Lnet/minecraft/block/material/Material;
+ INVOKESPECIAL net/minecraft/block/BlockColored. (Lnet/minecraft/block/material/Material;)V
+ LDC 1.25
+ INVOKEVIRTUAL net/minecraft/block/BlockColored.setHardness (F)Lnet/minecraft/block/Block;
+ LDC 7.0
+ INVOKEVIRTUAL net/minecraft/block/Block.setResistance (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypePiston : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "clayHardenedStained"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "hardened_clay_stained"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L170
+ LINENUMBER 409 L170
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ SIPUSH 160
+ LDC "stained_glass_pane"
+ NEW net/minecraft/block/BlockStainedGlassPane
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockStainedGlassPane. ()V
+ LDC 0.3
+ INVOKEVIRTUAL net/minecraft/block/BlockStainedGlassPane.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeGlass : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "thinStainedGlass"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "glass"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L171
+ LINENUMBER 410 L171
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ SIPUSH 161
+ LDC "leaves2"
+ NEW net/minecraft/block/BlockNewLeaf
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockNewLeaf. ()V
+ LDC "leaves"
+ INVOKEVIRTUAL net/minecraft/block/BlockNewLeaf.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "leaves"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L172
+ LINENUMBER 411 L172
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ SIPUSH 162
+ LDC "log2"
+ NEW net/minecraft/block/BlockNewLog
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockNewLog. ()V
+ LDC "log"
+ INVOKEVIRTUAL net/minecraft/block/BlockNewLog.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "log"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L173
+ LINENUMBER 412 L173
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ SIPUSH 163
+ LDC "acacia_stairs"
+ NEW net/minecraft/block/BlockStairs
+ DUP
+ ALOAD 1
+ ICONST_4
+ INVOKESPECIAL net/minecraft/block/BlockStairs. (Lnet/minecraft/block/Block;I)V
+ LDC "stairsWoodAcacia"
+ INVOKEVIRTUAL net/minecraft/block/BlockStairs.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L174
+ LINENUMBER 413 L174
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ SIPUSH 164
+ LDC "dark_oak_stairs"
+ NEW net/minecraft/block/BlockStairs
+ DUP
+ ALOAD 1
+ ICONST_5
+ INVOKESPECIAL net/minecraft/block/BlockStairs. (Lnet/minecraft/block/Block;I)V
+ LDC "stairsWoodDarkOak"
+ INVOKEVIRTUAL net/minecraft/block/BlockStairs.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L175
+ LINENUMBER 414 L175
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ SIPUSH 170
+ LDC "hay_block"
+ NEW net/minecraft/block/BlockHay
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockHay. ()V
+ LDC 0.5
+ INVOKEVIRTUAL net/minecraft/block/BlockHay.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeGrass : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "hayBlock"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/creativetab/CreativeTabs.tabBlock : Lnet/minecraft/creativetab/CreativeTabs;
+ INVOKEVIRTUAL net/minecraft/block/Block.setCreativeTab (Lnet/minecraft/creativetab/CreativeTabs;)Lnet/minecraft/block/Block;
+ LDC "hay_block"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L176
+ LINENUMBER 415 L176
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ SIPUSH 171
+ LDC "carpet"
+ NEW net/minecraft/block/BlockCarpet
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockCarpet. ()V
+ LDC 0.1
+ INVOKEVIRTUAL net/minecraft/block/BlockCarpet.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeCloth : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "woolCarpet"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ ICONST_0
+ INVOKEVIRTUAL net/minecraft/block/Block.setLightOpacity (I)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L177
+ LINENUMBER 416 L177
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ SIPUSH 172
+ LDC "hardened_clay"
+ NEW net/minecraft/block/BlockHardenedClay
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockHardenedClay. ()V
+ LDC 1.25
+ INVOKEVIRTUAL net/minecraft/block/BlockHardenedClay.setHardness (F)Lnet/minecraft/block/Block;
+ LDC 7.0
+ INVOKEVIRTUAL net/minecraft/block/Block.setResistance (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypePiston : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "clayHardened"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "hardened_clay"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L178
+ LINENUMBER 417 L178
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ SIPUSH 173
+ LDC "coal_block"
+ NEW net/minecraft/block/Block
+ DUP
+ GETSTATIC net/minecraft/block/material/Material.rock : Lnet/minecraft/block/material/Material;
+ INVOKESPECIAL net/minecraft/block/Block. (Lnet/minecraft/block/material/Material;)V
+ LDC 5.0
+ INVOKEVIRTUAL net/minecraft/block/Block.setHardness (F)Lnet/minecraft/block/Block;
+ LDC 10.0
+ INVOKEVIRTUAL net/minecraft/block/Block.setResistance (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypePiston : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "blockCoal"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/creativetab/CreativeTabs.tabBlock : Lnet/minecraft/creativetab/CreativeTabs;
+ INVOKEVIRTUAL net/minecraft/block/Block.setCreativeTab (Lnet/minecraft/creativetab/CreativeTabs;)Lnet/minecraft/block/Block;
+ LDC "coal_block"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L179
+ LINENUMBER 418 L179
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ SIPUSH 174
+ LDC "packed_ice"
+ NEW net/minecraft/block/BlockPackedIce
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockPackedIce. ()V
+ LDC 0.5
+ INVOKEVIRTUAL net/minecraft/block/BlockPackedIce.setHardness (F)Lnet/minecraft/block/Block;
+ GETSTATIC net/minecraft/block/Block.soundTypeGlass : Lnet/minecraft/block/Block$SoundType;
+ INVOKEVIRTUAL net/minecraft/block/Block.setStepSound (Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ LDC "icePacked"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ LDC "ice_packed"
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockTextureName (Ljava/lang/String;)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L180
+ LINENUMBER 419 L180
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ SIPUSH 175
+ LDC "double_plant"
+ NEW net/minecraft/block/BlockDoublePlant
+ DUP
+ INVOKESPECIAL net/minecraft/block/BlockDoublePlant. ()V
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.addObject (ILjava/lang/String;Ljava/lang/Object;)V
+ L181
+ LINENUMBER 420 L181
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ INVOKEVIRTUAL net/minecraft/util/RegistryNamespaced.iterator ()Ljava/util/Iterator;
+ ASTORE 10
+ L182
+ LINENUMBER 422 L182
+ FRAME FULL [net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block java/util/Iterator] []
+ ALOAD 10
+ INVOKEINTERFACE java/util/Iterator.hasNext ()Z
+ IFEQ L183
+ L184
+ LINENUMBER 424 L184
+ ALOAD 10
+ INVOKEINTERFACE java/util/Iterator.next ()Ljava/lang/Object;
+ CHECKCAST net/minecraft/block/Block
+ ASTORE 11
+ L185
+ LINENUMBER 426 L185
+ ALOAD 11
+ GETFIELD net/minecraft/block/Block.blockMaterial : Lnet/minecraft/block/material/Material;
+ GETSTATIC net/minecraft/block/material/Material.air : Lnet/minecraft/block/material/Material;
+ IF_ACMPNE L186
+ L187
+ LINENUMBER 428 L187
+ ALOAD 11
+ ICONST_0
+ PUTFIELD net/minecraft/block/Block.useNeighborBrightness : Z
+ GOTO L188
+ L186
+ LINENUMBER 432 L186
+ FRAME FULL [net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block java/util/Iterator net/minecraft/block/Block] []
+ ICONST_0
+ ISTORE 12
+ L189
+ LINENUMBER 433 L189
+ ALOAD 11
+ INVOKEVIRTUAL net/minecraft/block/Block.getRenderType ()I
+ BIPUSH 10
+ IF_ICMPNE L190
+ ICONST_1
+ GOTO L191
+ L190
+ FRAME FULL [net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block java/util/Iterator net/minecraft/block/Block I] []
+ ICONST_0
+ L191
+ FRAME FULL [net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block java/util/Iterator net/minecraft/block/Block I] [I]
+ ISTORE 13
+ L192
+ LINENUMBER 434 L192
+ ALOAD 11
+ INSTANCEOF net/minecraft/block/BlockSlab
+ ISTORE 14
+ L193
+ LINENUMBER 435 L193
+ ALOAD 11
+ ALOAD 4
+ IF_ACMPNE L194
+ ICONST_1
+ GOTO L195
+ L194
+ FRAME FULL [net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block java/util/Iterator net/minecraft/block/Block I I I] []
+ ICONST_0
+ L195
+ FRAME FULL [net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block java/util/Iterator net/minecraft/block/Block I I I] [I]
+ ISTORE 15
+ L196
+ LINENUMBER 436 L196
+ ALOAD 11
+ GETFIELD net/minecraft/block/Block.canBlockGrass : Z
+ ISTORE 16
+ L197
+ LINENUMBER 437 L197
+ ALOAD 11
+ GETFIELD net/minecraft/block/Block.lightOpacity : I
+ IFNE L198
+ ICONST_1
+ GOTO L199
+ L198
+ FRAME FULL [net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block java/util/Iterator net/minecraft/block/Block I I I I I] []
+ ICONST_0
+ L199
+ FRAME FULL [net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block java/util/Iterator net/minecraft/block/Block I I I I I] [I]
+ ISTORE 17
+ L200
+ LINENUMBER 439 L200
+ ILOAD 13
+ IFNE L201
+ ILOAD 14
+ IFNE L201
+ ILOAD 15
+ IFNE L201
+ ILOAD 16
+ IFNE L201
+ ILOAD 17
+ IFEQ L202
+ L201
+ LINENUMBER 441 L201
+ FRAME FULL [net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block java/util/Iterator net/minecraft/block/Block I I I I I I] []
+ ICONST_1
+ ISTORE 12
+ L202
+ LINENUMBER 444 L202
+ FRAME FULL [net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block java/util/Iterator net/minecraft/block/Block I I I I I I] []
+ ALOAD 11
+ ILOAD 12
+ PUTFIELD net/minecraft/block/Block.useNeighborBrightness : Z
+ L188
+ LINENUMBER 446 L188
+ FRAME FULL [net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block java/util/Iterator net/minecraft/block/Block] []
+ GOTO L182
+ L183
+ LINENUMBER 447 L183
+ FRAME FULL [net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block net/minecraft/block/Block java/util/Iterator] []
+ RETURN
+ L203
+ LOCALVARIABLE flag Z L189 L188 12
+ LOCALVARIABLE flag1 Z L192 L188 13
+ LOCALVARIABLE flag2 Z L193 L188 14
+ LOCALVARIABLE flag3 Z L196 L188 15
+ LOCALVARIABLE flag4 Z L197 L188 16
+ LOCALVARIABLE flag5 Z L200 L188 17
+ LOCALVARIABLE block10 Lnet/minecraft/block/Block; L185 L188 11
+ LOCALVARIABLE block Lnet/minecraft/block/Block; L5 L203 0
+ LOCALVARIABLE block1 Lnet/minecraft/block/Block; L7 L203 1
+ LOCALVARIABLE block2 Lnet/minecraft/block/Block; L27 L203 2
+ LOCALVARIABLE block3 Lnet/minecraft/block/Block; L49 L203 3
+ LOCALVARIABLE block4 Lnet/minecraft/block/Block; L65 L203 4
+ LOCALVARIABLE block5 Lnet/minecraft/block/Block; L92 L203 5
+ LOCALVARIABLE block6 Lnet/minecraft/block/Block; L105 L203 6
+ LOCALVARIABLE block7 Lnet/minecraft/block/Block; L111 L203 7
+ LOCALVARIABLE block8 Lnet/minecraft/block/Block; L121 L203 8
+ LOCALVARIABLE block9 Lnet/minecraft/block/Block; L165 L203 9
+ LOCALVARIABLE iterator Ljava/util/Iterator; L182 L203 10
+ MAXSTACK = 9
+ MAXLOCALS = 18
+
+ // access flags 0x4
+ protected (Lnet/minecraft/block/material/Material;)V
+ L0
+ LINENUMBER 450 L0
+ ALOAD 0
+ INVOKESPECIAL java/lang/Object. ()V
+ L1
+ LINENUMBER 130 L1
+ ALOAD 0
+ ICONST_1
+ PUTFIELD net/minecraft/block/Block.blockConstructorCalled : Z
+ L2
+ LINENUMBER 132 L2
+ ALOAD 0
+ ICONST_1
+ PUTFIELD net/minecraft/block/Block.enableStats : Z
+ L3
+ LINENUMBER 158 L3
+ ALOAD 0
+ GETSTATIC net/minecraft/block/Block.blockRegistry : Lnet/minecraft/util/RegistryNamespaced;
+ CHECKCAST cpw/mods/fml/common/registry/FMLControlledNamespacedRegistry
+ ALOAD 0
+ LDC Lnet/minecraft/block/Block;.class
+ L4
+ LINENUMBER 159 L4
+ INVOKEVIRTUAL cpw/mods/fml/common/registry/FMLControlledNamespacedRegistry.getDelegate (Ljava/lang/Object;Ljava/lang/Class;)Lcpw/mods/fml/common/registry/RegistryDelegate;
+ PUTFIELD net/minecraft/block/Block.delegate : Lcpw/mods/fml/common/registry/RegistryDelegate;
+ L5
+ LINENUMBER 1486 L5
+ ALOAD 0
+ NEW java/lang/ThreadLocal
+ DUP
+ INVOKESPECIAL java/lang/ThreadLocal. ()V
+ PUTFIELD net/minecraft/block/Block.harvesters : Ljava/lang/ThreadLocal;
+ L6
+ LINENUMBER 1487 L6
+ ALOAD 0
+ NEW java/lang/ThreadLocal
+ DUP
+ INVOKESPECIAL java/lang/ThreadLocal. ()V
+ PUTFIELD net/minecraft/block/Block.silk_check_meta : Ljava/lang/ThreadLocal;
+ L7
+ LINENUMBER 1747 L7
+ ALOAD 0
+ ALOAD 0
+ INSTANCEOF net/minecraft/block/ITileEntityProvider
+ PUTFIELD net/minecraft/block/Block.isTileProvider : Z
+ L8
+ LINENUMBER 2489 L8
+ ALOAD 0
+ BIPUSH 16
+ ANEWARRAY java/lang/String
+ PUTFIELD net/minecraft/block/Block.harvestTool : [Ljava/lang/String;
+ L9
+ LINENUMBER 2490 L9
+ ALOAD 0
+ BIPUSH 16
+ NEWARRAY T_INT
+ DUP
+ ICONST_0
+ ICONST_M1
+ IASTORE
+ DUP
+ ICONST_1
+ ICONST_M1
+ IASTORE
+ DUP
+ ICONST_2
+ ICONST_M1
+ IASTORE
+ DUP
+ ICONST_3
+ ICONST_M1
+ IASTORE
+ DUP
+ ICONST_4
+ ICONST_M1
+ IASTORE
+ DUP
+ ICONST_5
+ ICONST_M1
+ IASTORE
+ DUP
+ BIPUSH 6
+ ICONST_M1
+ IASTORE
+ DUP
+ BIPUSH 7
+ ICONST_M1
+ IASTORE
+ DUP
+ BIPUSH 8
+ ICONST_M1
+ IASTORE
+ DUP
+ BIPUSH 9
+ ICONST_M1
+ IASTORE
+ DUP
+ BIPUSH 10
+ ICONST_M1
+ IASTORE
+ DUP
+ BIPUSH 11
+ ICONST_M1
+ IASTORE
+ DUP
+ BIPUSH 12
+ ICONST_M1
+ IASTORE
+ DUP
+ BIPUSH 13
+ ICONST_M1
+ IASTORE
+ DUP
+ BIPUSH 14
+ ICONST_M1
+ IASTORE
+ DUP
+ BIPUSH 15
+ ICONST_M1
+ IASTORE
+ PUTFIELD net/minecraft/block/Block.harvestLevel : [I
+ L10
+ LINENUMBER 2570 L10
+ ALOAD 0
+ NEW net/minecraft/block/Block$4
+ DUP
+ ALOAD 0
+ INVOKESPECIAL net/minecraft/block/Block$4. (Lnet/minecraft/block/Block;)V
+ PUTFIELD net/minecraft/block/Block.captureDrops : Ljava/lang/ThreadLocal;
+ L11
+ LINENUMBER 2574 L11
+ ALOAD 0
+ NEW net/minecraft/block/Block$5
+ DUP
+ ALOAD 0
+ INVOKESPECIAL net/minecraft/block/Block$5. (Lnet/minecraft/block/Block;)V
+ PUTFIELD net/minecraft/block/Block.capturedDrops : Ljava/lang/ThreadLocal;
+ L12
+ LINENUMBER 451 L12
+ ALOAD 0
+ GETSTATIC net/minecraft/block/Block.soundTypeStone : Lnet/minecraft/block/Block$SoundType;
+ PUTFIELD net/minecraft/block/Block.stepSound : Lnet/minecraft/block/Block$SoundType;
+ L13
+ LINENUMBER 452 L13
+ ALOAD 0
+ FCONST_1
+ PUTFIELD net/minecraft/block/Block.blockParticleGravity : F
+ L14
+ LINENUMBER 453 L14
+ ALOAD 0
+ LDC 0.6
+ PUTFIELD net/minecraft/block/Block.slipperiness : F
+ L15
+ LINENUMBER 454 L15
+ ALOAD 0
+ ALOAD 1
+ PUTFIELD net/minecraft/block/Block.blockMaterial : Lnet/minecraft/block/material/Material;
+ L16
+ LINENUMBER 455 L16
+ ALOAD 0
+ FCONST_0
+ FCONST_0
+ FCONST_0
+ FCONST_1
+ FCONST_1
+ FCONST_1
+ INVOKEVIRTUAL net/minecraft/block/Block.setBlockBounds (FFFFFF)V
+ L17
+ LINENUMBER 456 L17
+ ALOAD 0
+ ALOAD 0
+ INVOKEVIRTUAL net/minecraft/block/Block.isOpaqueCube ()Z
+ PUTFIELD net/minecraft/block/Block.opaque : Z
+ L18
+ LINENUMBER 457 L18
+ ALOAD 0
+ ALOAD 0
+ INVOKEVIRTUAL net/minecraft/block/Block.isOpaqueCube ()Z
+ IFEQ L19
+ SIPUSH 255
+ GOTO L20
+ L19
+ FRAME FULL [net/minecraft/block/Block net/minecraft/block/material/Material] [net/minecraft/block/Block]
+ ICONST_0
+ L20
+ FRAME FULL [net/minecraft/block/Block net/minecraft/block/material/Material] [net/minecraft/block/Block I]
+ PUTFIELD net/minecraft/block/Block.lightOpacity : I
+ L21
+ LINENUMBER 458 L21
+ ALOAD 0
+ ALOAD 1
+ INVOKEVIRTUAL net/minecraft/block/material/Material.getCanBlockGrass ()Z
+ IFNE L22
+ ICONST_1
+ GOTO L23
+ L22
+ FRAME FULL [net/minecraft/block/Block net/minecraft/block/material/Material] [net/minecraft/block/Block]
+ ICONST_0
+ L23
+ FRAME FULL [net/minecraft/block/Block net/minecraft/block/material/Material] [net/minecraft/block/Block I]
+ PUTFIELD net/minecraft/block/Block.canBlockGrass : Z
+ L24
+ LINENUMBER 459 L24
+ RETURN
+ L25
+ LOCALVARIABLE this Lnet/minecraft/block/Block; L0 L25 0
+ LOCALVARIABLE p_i45394_1_ Lnet/minecraft/block/material/Material; L0 L25 1
+ MAXSTACK = 7
+ MAXLOCALS = 2
+
+ // access flags 0x1
+ public setStepSound(Lnet/minecraft/block/Block$SoundType;)Lnet/minecraft/block/Block;
+ L0
+ LINENUMBER 466 L0
+ ALOAD 0
+ ALOAD 1
+ PUTFIELD net/minecraft/block/Block.stepSound : Lnet/minecraft/block/Block$SoundType;
+ L1
+ LINENUMBER 467 L1
+ ALOAD 0
+ ARETURN
+ L2
+ LOCALVARIABLE this Lnet/minecraft/block/Block; L0 L2 0
+ LOCALVARIABLE p_149672_1_ Lnet/minecraft/block/Block$SoundType; L0 L2 1
+ MAXSTACK = 2
+ MAXLOCALS = 2
+
+ // access flags 0x1
+ public setLightOpacity(I)Lnet/minecraft/block/Block;
+ L0
+ LINENUMBER 475 L0
+ ALOAD 0
+ ILOAD 1
+ PUTFIELD net/minecraft/block/Block.lightOpacity : I
+ L1
+ LINENUMBER 476 L1
+ ALOAD 0
+ ARETURN
+ L2
+ LOCALVARIABLE this Lnet/minecraft/block/Block; L0 L2 0
+ LOCALVARIABLE p_149713_1_ I L0 L2 1
+ MAXSTACK = 2
+ MAXLOCALS = 2
+
+ // access flags 0x1
+ public setLightLevel(F)Lnet/minecraft/block/Block;
+ L0
+ LINENUMBER 485 L0
+ ALOAD 0
+ LDC 15.0
+ FLOAD 1
+ FMUL
+ F2I
+ PUTFIELD net/minecraft/block/Block.lightValue : I
+ L1
+ LINENUMBER 486 L1
+ ALOAD 0
+ ARETURN
+ L2
+ LOCALVARIABLE this Lnet/minecraft/block/Block; L0 L2 0
+ LOCALVARIABLE p_149715_1_ F L0 L2 1
+ MAXSTACK = 3
+ MAXLOCALS = 2
+
+ // access flags 0x1
+ public setResistance(F)Lnet/minecraft/block/Block;
+ L0
+ LINENUMBER 494 L0
+ ALOAD 0
+ FLOAD 1
+ LDC 3.0
+ FMUL
+ PUTFIELD net/minecraft/block/Block.blockResistance : F
+ L1
+ LINENUMBER 495 L1
+ ALOAD 0
+ ARETURN
+ L2
+ LOCALVARIABLE this Lnet/minecraft/block/Block; L0 L2 0
+ LOCALVARIABLE p_149752_1_ F L0 L2 1
+ MAXSTACK = 3
+ MAXLOCALS = 2
+
+ // access flags 0x1
+ public isBlockNormalCube()Z
+ @Lcpw/mods/fml/relauncher/SideOnly;(value=Lcpw/mods/fml/relauncher/Side;.CLIENT)
+ L0
+ LINENUMBER 504 L0
+ ALOAD 0
+ GETFIELD net/minecraft/block/Block.blockMaterial : Lnet/minecraft/block/material/Material;
+ INVOKEVIRTUAL net/minecraft/block/material/Material.blocksMovement ()Z
+ IFEQ L1
+ ALOAD 0
+ INVOKEVIRTUAL net/minecraft/block/Block.renderAsNormalBlock ()Z
+ IFEQ L1
+ ICONST_1
+ GOTO L2
+ L1
+ FRAME FULL [net/minecraft/block/Block] []
+ ICONST_0
+ L2
+ FRAME FULL [net/minecraft/block/Block] [I]
+ IRETURN
+ L3
+ LOCALVARIABLE this Lnet/minecraft/block/Block; L0 L3 0
+ MAXSTACK = 1
+ MAXLOCALS = 1
+
+ // access flags 0x1
+ public isNormalCube()Z
+ L0
+ LINENUMBER 509 L0
+ ALOAD 0
+ GETFIELD net/minecraft/block/Block.blockMaterial : Lnet/minecraft/block/material/Material;
+ INVOKEVIRTUAL net/minecraft/block/material/Material.isOpaque ()Z
+ IFEQ L1
+ ALOAD 0
+ INVOKEVIRTUAL net/minecraft/block/Block.renderAsNormalBlock ()Z
+ IFEQ L1
+ ALOAD 0
+ INVOKEVIRTUAL net/minecraft/block/Block.canProvidePower ()Z
+ IFNE L1
+ ICONST_1
+ GOTO L2
+ L1
+ FRAME FULL [net/minecraft/block/Block] []
+ ICONST_0
+ L2
+ FRAME FULL [net/minecraft/block/Block] [I]
+ IRETURN
+ L3
+ LOCALVARIABLE this Lnet/minecraft/block/Block; L0 L3 0
+ MAXSTACK = 1
+ MAXLOCALS = 1
+
+ // access flags 0x1
+ public renderAsNormalBlock()Z
+ L0
+ LINENUMBER 517 L0
+ ICONST_1
+ IRETURN
+ L1
+ LOCALVARIABLE this Lnet/minecraft/block/Block; L0 L1 0
+ MAXSTACK = 1
+ MAXLOCALS = 1
+
+ // access flags 0x1
+ public getBlocksMovement(Lnet/minecraft/world/IBlockAccess;III)Z
+ L0
+ LINENUMBER 522 L0
+ ALOAD 0
+ GETFIELD net/minecraft/block/Block.blockMaterial : Lnet/minecraft/block/material/Material;
+ INVOKEVIRTUAL net/minecraft/block/material/Material.blocksMovement ()Z
+ IFNE L1
+ ICONST_1
+ GOTO L2
+ L1
+ FRAME FULL [net/minecraft/block/Block net/minecraft/world/IBlockAccess I I I] []
+ ICONST_0
+ L2
+ FRAME FULL [net/minecraft/block/Block net/minecraft/world/IBlockAccess I I I] [I]
+ IRETURN
+ L3
+ LOCALVARIABLE this Lnet/minecraft/block/Block; L0 L3 0
+ LOCALVARIABLE p_149655_1_ Lnet/minecraft/world/IBlockAccess; L0 L3 1
+ LOCALVARIABLE p_149655_2_ I L0 L3 2
+ LOCALVARIABLE p_149655_3_ I L0 L3 3
+ LOCALVARIABLE p_149655_4_ I L0 L3 4
+ MAXSTACK = 1
+ MAXLOCALS = 5
+
+ // access flags 0x1
+ public getRenderType()I
+ L0
+ LINENUMBER 530 L0
+ ICONST_0
+ IRETURN
+ L1
+ LOCALVARIABLE this Lnet/minecraft/block/Block; L0 L1 0
+ MAXSTACK = 1
+ MAXLOCALS = 1
+
+ // access flags 0x1
+ public setHardness(F)Lnet/minecraft/block/Block;
+ L0
+ LINENUMBER 538 L0
+ ALOAD 0
+ FLOAD 1
+ PUTFIELD net/minecraft/block/Block.blockHardness : F
+ L1
+ LINENUMBER 540 L1
+ ALOAD 0
+ GETFIELD net/minecraft/block/Block.blockResistance : F
+ FLOAD 1
+ LDC 5.0
+ FMUL
+ FCMPG
+ IFGE L2
+ L3
+ LINENUMBER 542 L3
+ ALOAD 0
+ FLOAD 1
+ LDC 5.0
+ FMUL
+ PUTFIELD net/minecraft/block/Block.blockResistance : F
+ L2
+ LINENUMBER 545 L2
+ FRAME FULL [net/minecraft/block/Block F] []
+ ALOAD 0
+ ARETURN
+ L4
+ LOCALVARIABLE this Lnet/minecraft/block/Block; L0 L4 0
+ LOCALVARIABLE p_149711_1_ F L0 L4 1
+ MAXSTACK = 3
+ MAXLOCALS = 2
+
+ // access flags 0x1
+ public setBlockUnbreakable()Lnet/minecraft/block/Block;
+ L0
+ LINENUMBER 553 L0
+ ALOAD 0
+ LDC -1.0
+ INVOKEVIRTUAL net/minecraft/block/Block.setHardness (F)Lnet/minecraft/block/Block;
+ POP
+ L1
+ LINENUMBER 554 L1
+ ALOAD 0
+ ARETURN
+ L2
+ LOCALVARIABLE this Lnet/minecraft/block/Block; L0 L2 0
+ MAXSTACK = 2
+ MAXLOCALS = 1
+
+ // access flags 0x1
+ public getBlockHardness(Lnet/minecraft/world/World;III)F
+ L0
+ LINENUMBER 562 L0
+ ALOAD 0
+ GETFIELD net/minecraft/block/Block.blockHardness : F
+ FRETURN
+ L1
+ LOCALVARIABLE this Lnet/minecraft/block/Block; L0 L1 0
+ LOCALVARIABLE p_149712_1_ Lnet/minecraft/world/World; L0 L1 1
+ LOCALVARIABLE p_149712_2_ I L0 L1 2
+ LOCALVARIABLE p_149712_3_ I L0 L1 3
+ LOCALVARIABLE p_149712_4_ I L0 L1 4
+ MAXSTACK = 1
+ MAXLOCALS = 5
+
+ // access flags 0x1
+ public setTickRandomly(Z)Lnet/minecraft/block/Block;
+ L0
+ LINENUMBER 570 L0
+ ALOAD 0
+ ILOAD 1
+ PUTFIELD net/minecraft/block/Block.needsRandomTick : Z
+ L1
+ LINENUMBER 571 L1
+ ALOAD 0
+ ARETURN
+ L2
+ LOCALVARIABLE this Lnet/minecraft/block/Block; L0 L2 0
+ LOCALVARIABLE p_149675_1_ Z L0 L2 1
+ MAXSTACK = 2
+ MAXLOCALS = 2
+
+ // access flags 0x1
+ public getTickRandomly()Z
+ L0
+ LINENUMBER 580 L0
+ ALOAD 0
+ GETFIELD net/minecraft/block/Block.needsRandomTick : Z
+ IRETURN
+ L1
+ LOCALVARIABLE this Lnet/minecraft/block/Block; L0 L1 0
+ MAXSTACK = 1
+ MAXLOCALS = 1
+
+ // DEPRECATED
+ // access flags 0x20001
+ public hasTileEntity()Z
+ @Ljava/lang/Deprecated;()
+ L0
+ LINENUMBER 586 L0
+ ALOAD 0
+ ICONST_0
+ INVOKEVIRTUAL net/minecraft/block/Block.hasTileEntity (I)Z
+ IRETURN
+ L1
+ LOCALVARIABLE this Lnet/minecraft/block/Block; L0 L1 0
+ MAXSTACK = 2
+ MAXLOCALS = 1
+
+ // access flags 0x11
+ public final setBlockBounds(FFFFFF)V
+ L0
+ LINENUMBER 594 L0
+ ALOAD 0
+ FLOAD 1
+ F2D
+ PUTFIELD net/minecraft/block/Block.minX : D
+ L1
+ LINENUMBER 595 L1
+ ALOAD 0
+ FLOAD 2
+ F2D
+ PUTFIELD net/minecraft/block/Block.minY : D
+ L2
+ LINENUMBER 596 L2
+ ALOAD 0
+ FLOAD 3
+ F2D
+ PUTFIELD net/minecraft/block/Block.minZ : D
+ L3
+ LINENUMBER 597 L3
+ ALOAD 0
+ FLOAD 4
+ F2D
+ PUTFIELD net/minecraft/block/Block.maxX : D
+ L4
+ LINENUMBER 598 L4
+ ALOAD 0
+ FLOAD 5
+ F2D
+ PUTFIELD net/minecraft/block/Block.maxY : D
+ L5
+ LINENUMBER 599 L5
+ ALOAD 0
+ FLOAD 6
+ F2D
+ PUTFIELD net/minecraft/block/Block.maxZ : D
+ L6
+ LINENUMBER 600 L6
+ RETURN
+ L7
+ LOCALVARIABLE this Lnet/minecraft/block/Block; L0 L7 0
+ LOCALVARIABLE p_149676_1_ F L0 L7 1
+ LOCALVARIABLE p_149676_2_ F L0 L7 2
+ LOCALVARIABLE p_149676_3_ F L0 L7 3
+ LOCALVARIABLE p_149676_4_ F L0 L7 4
+ LOCALVARIABLE p_149676_5_ F L0 L7 5
+ LOCALVARIABLE p_149676_6_ F L0 L7 6
+ MAXSTACK = 3
+ MAXLOCALS = 7
+
+ // access flags 0x1
+ public getMixedBrightnessForBlock(Lnet/minecraft/world/IBlockAccess;III)I
+ @Lcpw/mods/fml/relauncher/SideOnly;(value=Lcpw/mods/fml/relauncher/Side;.CLIENT)
+ L0
+ LINENUMBER 608 L0
+ ALOAD 1
+ ILOAD 2
+ ILOAD 3
+ ILOAD 4
+ INVOKEINTERFACE net/minecraft/world/IBlockAccess.getBlock (III)Lnet/minecraft/block/Block;
+ ASTORE 5
+ L1
+ LINENUMBER 609 L1
+ ALOAD 1
+ ILOAD 2
+ ILOAD 3
+ ILOAD 4
+ ALOAD 5
+ ALOAD 1
+ ILOAD 2
+ ILOAD 3
+ ILOAD 4
+ INVOKEVIRTUAL net/minecraft/block/Block.getLightValue (Lnet/minecraft/world/IBlockAccess;III)I
+ INVOKEINTERFACE net/minecraft/world/IBlockAccess.getLightBrightnessForSkyBlocks (IIII)I
+ ISTORE 6
+ L2
+ LINENUMBER 611 L2
+ ILOAD 6
+ IFNE L3
+ ALOAD 5
+ INSTANCEOF net/minecraft/block/BlockSlab
+ IFEQ L3
+ L4
+ LINENUMBER 613 L4
+ IINC 3 -1
+ L5
+ LINENUMBER 614 L5
+ ALOAD 1
+ ILOAD 2
+ ILOAD 3
+ ILOAD 4
+ INVOKEINTERFACE net/minecraft/world/IBlockAccess.getBlock (III)Lnet/minecraft/block/Block;
+ ASTORE 5
+ L6
+ LINENUMBER 615 L6
+ ALOAD 1
+ ILOAD 2
+ ILOAD 3
+ ILOAD 4
+ ALOAD 5
+ ALOAD 1
+ ILOAD 2
+ ILOAD 3
+ ILOAD 4
+ INVOKEVIRTUAL net/minecraft/block/Block.getLightValue (Lnet/minecraft/world/IBlockAccess;III)I
+ INVOKEINTERFACE net/minecraft/world/IBlockAccess.getLightBrightnessForSkyBlocks (IIII)I
+ IRETURN
+ L3
+ LINENUMBER 619 L3
+ FRAME FULL [net/minecraft/block/Block net/minecraft/world/IBlockAccess I I I net/minecraft/block/Block I] []
+ ILOAD 6
+ IRETURN
+ L7
+ LOCALVARIABLE this Lnet/minecraft/block/Block; L0 L7 0
+ LOCALVARIABLE p_149677_1_ Lnet/minecraft/world/IBlockAccess; L0 L7 1
+ LOCALVARIABLE p_149677_2_ I L0 L7 2
+ LOCALVARIABLE p_149677_3_ I L0 L7 3
+ LOCALVARIABLE p_149677_4_ I L0 L7 4
+ LOCALVARIABLE block Lnet/minecraft/block/Block; L1 L7 5
+ LOCALVARIABLE l I L2 L7 6
+ MAXSTACK = 9
+ MAXLOCALS = 7
+
+ // access flags 0x1
+ public shouldSideBeRendered(Lnet/minecraft/world/IBlockAccess;IIII)Z
+ @Lcpw/mods/fml/relauncher/SideOnly;(value=Lcpw/mods/fml/relauncher/Side;.CLIENT)
+ L0
+ LINENUMBER 630 L0
+ ILOAD 5
+ IFNE L1
+ ALOAD 0
+ GETFIELD net/minecraft/block/Block.minY : D
+ DCONST_0
+ DCMPL
+ IFLE L1
+ ICONST_1
+ GOTO L2
+ L1
+ FRAME FULL [net/minecraft/block/Block net/minecraft/world/IBlockAccess I I I I] []
+ ILOAD 5
+ ICONST_1
+ IF_ICMPNE L3
+ ALOAD 0
+ GETFIELD net/minecraft/block/Block.maxY : D
+ DCONST_1
+ DCMPG
+ IFGE L3
+ ICONST_1
+ GOTO L2
+ L3
+ FRAME FULL [net/minecraft/block/Block net/minecraft/world/IBlockAccess I I I I] []
+ ILOAD 5
+ ICONST_2
+ IF_ICMPNE L4
+ ALOAD 0
+ GETFIELD net/minecraft/block/Block.minZ : D
+ DCONST_0
+ DCMPL
+ IFLE L4
+ ICONST_1
+ GOTO L2
+ L4
+ FRAME FULL [net/minecraft/block/Block net/minecraft/world/IBlockAccess I I I I] []
+ ILOAD 5
+ ICONST_3
+ IF_ICMPNE L5
+ ALOAD 0
+ GETFIELD net/minecraft/block/Block.maxZ : D
+ DCONST_1
+ DCMPG
+ IFGE L5
+ ICONST_1
+ GOTO L2
+ L5
+ FRAME FULL [net/minecraft/block/Block net/minecraft/world/IBlockAccess I I I I] []
+ ILOAD 5
+ ICONST_4
+ IF_ICMPNE L6
+ ALOAD 0
+ GETFIELD net/minecraft/block/Block.minX : D
+ DCONST_0
+ DCMPL
+ IFLE L6
+ ICONST_1
+ GOTO L2
+ L6
+ FRAME FULL [net/minecraft/block/Block net/minecraft/world/IBlockAccess I I I I] []
+ ILOAD 5
+ ICONST_5
+ IF_ICMPNE L7
+ ALOAD 0
+ GETFIELD net/minecraft/block/Block.maxX : D
+ DCONST_1
+ DCMPG
+ IFGE L7
+ ICONST_1
+ GOTO L2
+ L7
+ FRAME FULL [net/minecraft/block/Block net/minecraft/world/IBlockAccess I I I I] []
+ ALOAD 1
+ ILOAD 2
+ ILOAD 3
+ ILOAD 4
+ INVOKEINTERFACE net/minecraft/world/IBlockAccess.getBlock (III)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/block/Block.isOpaqueCube ()Z
+ IFNE L8
+ ICONST_1
+ GOTO L2
+ L8
+ FRAME FULL [net/minecraft/block/Block net/minecraft/world/IBlockAccess I I I I] []
+ ICONST_0
+ L2
+ FRAME FULL [net/minecraft/block/Block net/minecraft/world/IBlockAccess I I I I] [I]
+ IRETURN
+ L9
+ LOCALVARIABLE this Lnet/minecraft/block/Block; L0 L9 0
+ LOCALVARIABLE p_149646_1_ Lnet/minecraft/world/IBlockAccess; L0 L9 1
+ LOCALVARIABLE p_149646_2_ I L0 L9 2
+ LOCALVARIABLE p_149646_3_ I L0 L9 3
+ LOCALVARIABLE p_149646_4_ I L0 L9 4
+ LOCALVARIABLE p_149646_5_ I L0 L9 5
+ MAXSTACK = 4
+ MAXLOCALS = 6
+
+ // access flags 0x1
+ public isBlockSolid(Lnet/minecraft/world/IBlockAccess;IIII)Z
+ L0
+ LINENUMBER 639 L0
+ ALOAD 1
+ ILOAD 2
+ ILOAD 3
+ ILOAD 4
+ INVOKEINTERFACE net/minecraft/world/IBlockAccess.getBlock (III)Lnet/minecraft/block/Block;
+ INVOKEVIRTUAL net/minecraft/block/Block.getMaterial ()Lnet/minecraft/block/material/Material;
+ INVOKEVIRTUAL net/minecraft/block/material/Material.isSolid ()Z
+ IRETURN
+ L1
+ LOCALVARIABLE this Lnet/minecraft/block/Block; L0 L1 0
+ LOCALVARIABLE p_149747_1_ Lnet/minecraft/world/IBlockAccess; L0 L1 1
+ LOCALVARIABLE p_149747_2_ I L0 L1 2
+ LOCALVARIABLE p_149747_3_ I L0 L1 3
+ LOCALVARIABLE p_149747_4_ I L0 L1 4
+ LOCALVARIABLE p_149747_5_ I L0 L1 5
+ MAXSTACK = 4
+ MAXLOCALS = 6
+
+ // access flags 0x1
+ public getIcon(Lnet/minecraft/world/IBlockAccess;IIII)Lnet/minecraft/util/IIcon;
+ @Lcpw/mods/fml/relauncher/SideOnly;(value=Lcpw/mods/fml/relauncher/Side;.CLIENT)
+ L0
+ LINENUMBER 645 L0
+ ALOAD 0
+ ILOAD 5
+ ALOAD 1
+ ILOAD 2
+ ILOAD 3
+ ILOAD 4
+ INVOKEINTERFACE net/minecraft/world/IBlockAccess.getBlockMetadata (III)I
+ INVOKEVIRTUAL net/minecraft/block/Block.getIcon (II)Lnet/minecraft/util/IIcon;
+ ARETURN
+ L1
+ LOCALVARIABLE this Lnet/minecraft/block/Block; L0 L1 0
+ LOCALVARIABLE p_149673_1_ Lnet/minecraft/world/IBlockAccess; L0 L1 1
+ LOCALVARIABLE p_149673_2_ I L0 L1 2
+ LOCALVARIABLE p_149673_3_ I L0 L1 3
+ LOCALVARIABLE p_149673_4_ I L0 L1 4
+ LOCALVARIABLE p_149673_5_ I L0 L1 5
+ MAXSTACK = 6
+ MAXLOCALS = 6
+
+ // access flags 0x1
+ public getIcon(II)Lnet/minecraft/util/IIcon;
+ @Lcpw/mods/fml/relauncher/SideOnly;(value=Lcpw/mods/fml/relauncher/Side;.CLIENT)
+ L0
+ LINENUMBER 654 L0
+ ALOAD 0
+ GETFIELD net/minecraft/block/Block.blockIcon : Lnet/minecraft/util/IIcon;
+ ARETURN
+ L1
+ LOCALVARIABLE this Lnet/minecraft/block/Block; L0 L1 0
+ LOCALVARIABLE p_149691_1_ I L0 L1 1
+ LOCALVARIABLE p_149691_2_ I L0 L1 2
+ MAXSTACK = 1
+ MAXLOCALS = 3
+
+ // access flags 0x1
+ public addCollisionBoxesToList(Lnet/minecraft/world/World;IIILnet/minecraft/util/AxisAlignedBB;Ljava/util/List;Lnet/minecraft/entity/Entity;)V
+ L0
+ LINENUMBER 663 L0
+ ALOAD 0
+ ALOAD 1
+ ILOAD 2
+ ILOAD 3
+ ILOAD 4
+ INVOKEVIRTUAL net/minecraft/block/Block.getCollisionBoundingBoxFromPool (Lnet/minecraft/world/World;III)Lnet/minecraft/util/AxisAlignedBB;
+ ASTORE 8
+ L1
+ LINENUMBER 665 L1
+ ALOAD 8
+ IFNULL L2
+ ALOAD 5
+ ALOAD 8
+ INVOKEVIRTUAL net/minecraft/util/AxisAlignedBB.intersectsWith (Lnet/minecraft/util/AxisAlignedBB;)Z
+ IFEQ L2
+ L3
+ LINENUMBER 667 L3
+ ALOAD 6
+ ALOAD 8
+ INVOKEINTERFACE java/util/List.add (Ljava/lang/Object;)Z
+ POP
+ L2
+ LINENUMBER 669 L2
+ FRAME FULL [net/minecraft/block/Block net/minecraft/world/World I I I net/minecraft/util/AxisAlignedBB java/util/List net/minecraft/entity/Entity net/minecraft/util/AxisAlignedBB] []
+ RETURN
+ L4
+ LOCALVARIABLE this Lnet/minecraft/block/Block; L0 L4 0
+ LOCALVARIABLE p_149743_1_ Lnet/minecraft/world/World; L0 L4 1
+ LOCALVARIABLE p_149743_2_ I L0 L4 2
+ LOCALVARIABLE p_149743_3_ I L0 L4 3
+ LOCALVARIABLE p_149743_4_ I L0 L4 4
+ LOCALVARIABLE p_149743_5_ Lnet/minecraft/util/AxisAlignedBB; L0 L4 5
+ LOCALVARIABLE p_149743_6_ Ljava/util/List; L0 L4 6
+ LOCALVARIABLE p_149743_7_ Lnet/minecraft/entity/Entity; L0 L4 7
+ LOCALVARIABLE axisalignedbb1 Lnet/minecraft/util/AxisAlignedBB; L1 L4 8
+ MAXSTACK = 5
+ MAXLOCALS = 9
+
+ // access flags 0x1
+ public getCollisionBoundingBoxFromPool(Lnet/minecraft/world/World;III)Lnet/minecraft/util/AxisAlignedBB;
+ L0
+ LINENUMBER 677 L0
+ ILOAD 2
+ I2D
+ ALOAD 0
+ GETFIELD net/minecraft/block/Block.minX : D
+ DADD
+ ILOAD 3
+ I2D
+ ALOAD 0
+ GETFIELD net/minecraft/block/Block.minY : D
+ DADD
+ ILOAD 4
+ I2D
+ ALOAD 0
+ GETFIELD net/minecraft/block/Block.minZ : D
+ DADD
+ ILOAD 2
+ I2D
+ ALOAD 0
+ GETFIELD net/minecraft/block/Block.maxX : D
+ DADD
+ ILOAD 3
+ I2D
+ ALOAD 0
+ GETFIELD net/minecraft/block/Block.maxY : D
+ DADD
+ ILOAD 4
+ I2D
+ ALOAD 0
+ GETFIELD net/minecraft/block/Block.maxZ : D
+ DADD
+ INVOKESTATIC net/minecraft/util/AxisAlignedBB.getBoundingBox (DDDDDD)Lnet/minecraft/util/AxisAlignedBB;
+ ARETURN
+ L1
+ LOCALVARIABLE this Lnet/minecraft/block/Block; L0 L1 0
+ LOCALVARIABLE p_149668_1_ Lnet/minecraft/world/World; L0 L1 1
+ LOCALVARIABLE p_149668_2_ I L0 L1 2
+ LOCALVARIABLE p_149668_3_ I L0 L1 3
+ LOCALVARIABLE p_149668_4_ I L0 L1 4
+ MAXSTACK = 14
+ MAXLOCALS = 5
+
+ // access flags 0x11
+ public final getBlockTextureFromSide(I)Lnet/minecraft/util/IIcon;
+ @Lcpw/mods/fml/relauncher/SideOnly;(value=Lcpw/mods/fml/relauncher/Side;.CLIENT)
+ L0
+ LINENUMBER 686 L0
+ ALOAD 0
+ ILOAD 1
+ ICONST_0
+ INVOKEVIRTUAL net/minecraft/block/Block.getIcon (II)Lnet/minecraft/util/IIcon;
+ ARETURN
+ L1
+ LOCALVARIABLE this Lnet/minecraft/block/Block; L0 L1 0
+ LOCALVARIABLE p_149733_1_ I L0 L1 1
+ MAXSTACK = 3
+ MAXLOCALS = 2
+
+ // access flags 0x1
+ public getSelectedBoundingBoxFromPool(Lnet/minecraft/world/World;III)Lnet/minecraft/util/AxisAlignedBB;
+ @Lcpw/mods/fml/relauncher/SideOnly;(value=Lcpw/mods/fml/relauncher/Side;.CLIENT)
+ L0
+ LINENUMBER 695 L0
+ ILOAD 2
+ I2D
+ ALOAD 0
+ GETFIELD net/minecraft/block/Block.minX : D
+ DADD
+ ILOAD 3
+ I2D
+ ALOAD 0
+ GETFIELD net/minecraft/block/Block.minY : D
+ DADD
+ ILOAD 4
+ I2D
+ ALOAD 0
+ GETFIELD net/minecraft/block/Block.minZ : D
+ DADD
+ ILOAD 2
+ I2D
+ ALOAD 0
+ GETFIELD net/minecraft/block/Block.maxX : D
+ DADD
+ ILOAD 3
+ I2D
+ ALOAD 0
+ GETFIELD net/minecraft/block/Block.maxY : D
+ DADD
+ ILOAD 4
+ I2D
+ ALOAD 0
+ GETFIELD net/minecraft/block/Block.maxZ : D
+ DADD
+ INVOKESTATIC net/minecraft/util/AxisAlignedBB.getBoundingBox (DDDDDD)Lnet/minecraft/util/AxisAlignedBB;
+ ARETURN
+ L1
+ LOCALVARIABLE this Lnet/minecraft/block/Block; L0 L1 0
+ LOCALVARIABLE p_149633_1_ Lnet/minecraft/world/World; L0 L1 1
+ LOCALVARIABLE p_149633_2_ I L0 L1 2
+ LOCALVARIABLE p_149633_3_ I L0 L1 3
+ LOCALVARIABLE p_149633_4_ I L0 L1 4
+ MAXSTACK = 14
+ MAXLOCALS = 5
+
+ // access flags 0x1
+ public isOpaqueCube()Z
+ L0
+ LINENUMBER 704 L0
+ ICONST_1
+ IRETURN
+ L1
+ LOCALVARIABLE this Lnet/minecraft/block/Block; L0 L1 0
+ MAXSTACK = 1
+ MAXLOCALS = 1
+
+ // access flags 0x1
+ public canCollideCheck(IZ)Z
+ L0
+ LINENUMBER 714 L0
+ ALOAD 0
+ INVOKEVIRTUAL net/minecraft/block/Block.isCollidable ()Z
+ IRETURN
+ L1
+ LOCALVARIABLE this Lnet/minecraft/block/Block; L0 L1 0
+ LOCALVARIABLE p_149678_1_ I L0 L1 1
+ LOCALVARIABLE p_149678_2_ Z L0 L1 2
+ MAXSTACK = 1
+ MAXLOCALS = 3
+
+ // access flags 0x1
+ public isCollidable()Z
+ L0
+ LINENUMBER 722 L0
+ ICONST_1
+ IRETURN
+ L1
+ LOCALVARIABLE this Lnet/minecraft/block/Block; L0 L1 0
+ MAXSTACK = 1
+ MAXLOCALS = 1
+
+ // access flags 0x1
+ public updateTick(Lnet/minecraft/world/World;IIILjava/util/Random;)V
+ L0
+ LINENUMBER 728 L0
+ RETURN
+ L1
+ LOCALVARIABLE this Lnet/minecraft/block/Block; L0 L1 0
+ LOCALVARIABLE p_149674_1_ Lnet/minecraft/world/World; L0 L1 1
+ LOCALVARIABLE p_149674_2_ I L0 L1 2
+ LOCALVARIABLE p_149674_3_ I L0 L1 3
+ LOCALVARIABLE p_149674_4_ I L0 L1 4
+ LOCALVARIABLE p_149674_5_ Ljava/util/Random; L0 L1 5
+ MAXSTACK = 0
+ MAXLOCALS = 6
+
+ // access flags 0x1
+ public randomDisplayTick(Lnet/minecraft/world/World;IIILjava/util/Random;)V
+ @Lcpw/mods/fml/relauncher/SideOnly;(value=Lcpw/mods/fml/relauncher/Side;.CLIENT)
+ L0
+ LINENUMBER 734 L0
+ RETURN
+ L1
+ LOCALVARIABLE this Lnet/minecraft/block/Block; L0 L1 0
+ LOCALVARIABLE p_149734_1_ Lnet/minecraft/world/World; L0 L1 1
+ LOCALVARIABLE p_149734_2_ I L0 L1 2
+ LOCALVARIABLE p_149734_3_ I L0 L1 3
+ LOCALVARIABLE p_149734_4_ I L0 L1 4
+ LOCALVARIABLE p_149734_5_ Ljava/util/Random; L0 L1 5
+ MAXSTACK = 0
+ MAXLOCALS = 6
+
+ // access flags 0x1
+ public onBlockDestroyedByPlayer(Lnet/minecraft/world/World;IIII)V
+ L0
+ LINENUMBER 739 L0
+ RETURN
+ L1
+ LOCALVARIABLE this Lnet/minecraft/block/Block; L0 L1 0
+ LOCALVARIABLE p_149664_1_ Lnet/minecraft/world/World; L0 L1 1
+ LOCALVARIABLE p_149664_2_ I L0 L1 2
+ LOCALVARIABLE p_149664_3_ I L0 L1 3
+ LOCALVARIABLE p_149664_4_ I L0 L1 4
+ LOCALVARIABLE p_149664_5_ I L0 L1 5
+ MAXSTACK = 0
+ MAXLOCALS = 6
+
+ // access flags 0x1
+ public onNeighborBlockChange(Lnet/minecraft/world/World;IIILnet/minecraft/block/Block;)V
+ L0
+ LINENUMBER 745 L0
+ RETURN
+ L1
+ LOCALVARIABLE this Lnet/minecraft/block/Block; L0 L1 0
+ LOCALVARIABLE p_149695_1_ Lnet/minecraft/world/World; L0 L1 1
+ LOCALVARIABLE p_149695_2_ I L0 L1 2
+ LOCALVARIABLE p_149695_3_ I L0 L1 3
+ LOCALVARIABLE p_149695_4_ I L0 L1 4
+ LOCALVARIABLE p_149695_5_ Lnet/minecraft/block/Block; L0 L1 5
+ MAXSTACK = 0
+ MAXLOCALS = 6
+
+ // access flags 0x1
+ public tickRate(Lnet/minecraft/world/World;)I
+ L0
+ LINENUMBER 752 L0
+ BIPUSH 10
+ IRETURN
+ L1
+ LOCALVARIABLE this Lnet/minecraft/block/Block; L0 L1 0
+ LOCALVARIABLE p_149738_1_ Lnet/minecraft/world/World; L0 L1 1
+ MAXSTACK = 1
+ MAXLOCALS = 2
+
+ // access flags 0x1
+ public onBlockAdded(Lnet/minecraft/world/World;III)V
+ L0
+ LINENUMBER 758 L0
+ RETURN
+ L1
+ LOCALVARIABLE this Lnet/minecraft/block/Block; L0 L1 0
+ LOCALVARIABLE p_149726_1_ Lnet/minecraft/world/World; L0 L1 1
+ LOCALVARIABLE p_149726_2_ I L0 L1 2
+ LOCALVARIABLE p_149726_3_ I L0 L1 3
+ LOCALVARIABLE p_149726_4_ I L0 L1 4
+ MAXSTACK = 0
+ MAXLOCALS = 5
+
+ // access flags 0x1
+ public breakBlock(Lnet/minecraft/world/World;IIILnet/minecraft/block/Block;I)V
+ L0
+ LINENUMBER 762 L0
+ ALOAD 0
+ ILOAD 6
+ INVOKEVIRTUAL net/minecraft/block/Block.hasTileEntity (I)Z
+ IFEQ L1
+ ALOAD 0
+ INSTANCEOF net/minecraft/block/BlockContainer
+ IFNE L1
+ L2
+ LINENUMBER 764 L2
+ ALOAD 1
+ ILOAD 2
+ ILOAD 3
+ ILOAD 4
+ INVOKEVIRTUAL net/minecraft/world/World.removeTileEntity (III)V
+ L1
+ LINENUMBER 766 L1
+ FRAME FULL [net/minecraft/block/Block net/minecraft/world/World I I I net/minecraft/block/Block I] []
+ RETURN
+ L3
+ LOCALVARIABLE this Lnet/minecraft/block/Block; L0 L3 0
+ LOCALVARIABLE p_149749_1_ Lnet/minecraft/world/World; L0 L3 1
+ LOCALVARIABLE p_149749_2_ I L0 L3 2
+ LOCALVARIABLE p_149749_3_ I L0 L3 3
+ LOCALVARIABLE p_149749_4_ I L0 L3 4
+ LOCALVARIABLE p_149749_5_ Lnet/minecraft/block/Block; L0 L3 5
+ LOCALVARIABLE p_149749_6_ I L0 L3 6
+ MAXSTACK = 4
+ MAXLOCALS = 7
+
+ // access flags 0x1
+ public quantityDropped(Ljava/util/Random;)I
+ L0
+ LINENUMBER 773 L0
+ ICONST_1
+ IRETURN
+ L1
+ LOCALVARIABLE this Lnet/minecraft/block/Block; L0 L1 0
+ LOCALVARIABLE p_149745_1_ Ljava/util/Random; L0 L1 1
+ MAXSTACK = 1
+ MAXLOCALS = 2
+
+ // access flags 0x1
+ public getItemDropped(ILjava/util/Random;I)Lnet/minecraft/item/Item;
+ L0
+ LINENUMBER 778 L0
+ ALOAD 0
+ INVOKESTATIC net/minecraft/item/Item.getItemFromBlock (Lnet/minecraft/block/Block;)Lnet/minecraft/item/Item;
+ ARETURN
+ L1
+ LOCALVARIABLE this Lnet/minecraft/block/Block; L0 L1 0
+ LOCALVARIABLE p_149650_1_ I L0 L1 1
+ LOCALVARIABLE p_149650_2_ Ljava/util/Random; L0 L1 2
+ LOCALVARIABLE p_149650_3_ I L0 L1 3
+ MAXSTACK = 1
+ MAXLOCALS = 4
+
+ // access flags 0x1
+ public getPlayerRelativeBlockHardness(Lnet/minecraft/entity/player/EntityPlayer;Lnet/minecraft/world/World;III)F
+ L0
+ LINENUMBER 787 L0
+ ALOAD 0
+ ALOAD 1
+ ALOAD 2
+ ILOAD 3
+ ILOAD 4
+ ILOAD 5
+ INVOKESTATIC net/minecraftforge/common/ForgeHooks.blockStrength (Lnet/minecraft/block/Block;Lnet/minecraft/entity/player/EntityPlayer;Lnet/minecraft/world/World;III)F
+ FRETURN
+ L1
+ LOCALVARIABLE this Lnet/minecraft/block/Block; L0 L1 0
+ LOCALVARIABLE p_149737_1_ Lnet/minecraft/entity/player/EntityPlayer; L0 L1 1
+ LOCALVARIABLE p_149737_2_ Lnet/minecraft/world/World; L0 L1 2
+ LOCALVARIABLE p_149737_3_ I L0 L1 3
+ LOCALVARIABLE p_149737_4_ I L0 L1 4
+ LOCALVARIABLE p_149737_5_ I L0 L1 5
+ MAXSTACK = 6
+ MAXLOCALS = 6
+
+ // access flags 0x11
+ public final dropBlockAsItem(Lnet/minecraft/world/World;IIIII)V
+ L0
+ LINENUMBER 795 L0
+ ALOAD 0
+ ALOAD 1
+ ILOAD 2
+ ILOAD 3
+ ILOAD 4
+ ILOAD 5
+ FCONST_1
+ ILOAD 6
+ INVOKEVIRTUAL net/minecraft/block/Block.dropBlockAsItemWithChance (Lnet/minecraft/world/World;IIIIFI)V
+ L1
+ LINENUMBER 796 L1
+ RETURN
+ L2
+ LOCALVARIABLE this Lnet/minecraft/block/Block; L0 L2 0
+ LOCALVARIABLE p_149697_1_ Lnet/minecraft/world/World; L0 L2 1
+ LOCALVARIABLE p_149697_2_ I L0 L2 2
+ LOCALVARIABLE p_149697_3_ I L0 L2 3
+ LOCALVARIABLE p_149697_4_ I L0 L2 4
+ LOCALVARIABLE p_149697_5_ I L0 L2 5
+ LOCALVARIABLE p_149697_6_ I L0 L2 6
+ MAXSTACK = 8
+ MAXLOCALS = 7
+
+ // access flags 0x1
+ public dropBlockAsItemWithChance(Lnet/minecraft/world/World;IIIIFI)V
+ L0
+ LINENUMBER 803 L0
+ ALOAD 1
+ GETFIELD net/minecraft/world/World.isRemote : Z
+ IFNE L1
+ ALOAD 1
+ GETFIELD net/minecraft/world/World.restoringBlockSnapshots : Z
+ IFNE L1
+ L2
+ LINENUMBER 805 L2
+ ALOAD 0
+ ALOAD 1
+ ILOAD 2
+ ILOAD 3
+ ILOAD 4
+ ILOAD 5
+ ILOAD 7
+ INVOKEVIRTUAL net/minecraft/block/Block.getDrops (Lnet/minecraft/world/World;IIIII)Ljava/util/ArrayList;
+ ASTORE 8
+ L3
+ LINENUMBER 806 L3
+ ALOAD 8
+ ALOAD 1
+ ALOAD 0
+ ILOAD 2
+ ILOAD 3
+ ILOAD 4
+ ILOAD 5
+ ILOAD 7
+ FLOAD 6
+ ICONST_0
+ ALOAD 0
+ GETFIELD net/minecraft/block/Block.harvesters : Ljava/lang/ThreadLocal;
+ INVOKEVIRTUAL java/lang/ThreadLocal.get ()Ljava/lang/Object;
+ CHECKCAST net/minecraft/entity/player/EntityPlayer
+ INVOKESTATIC net/minecraftforge/event/ForgeEventFactory.fireBlockHarvesting (Ljava/util/ArrayList;Lnet/minecraft/world/World;Lnet/minecraft/block/Block;IIIIIFZLnet/minecraft/entity/player/EntityPlayer;)F
+ FSTORE 6
+ L4
+ LINENUMBER 808 L4
+ ALOAD 8
+ INVOKEVIRTUAL java/util/ArrayList.iterator ()Ljava/util/Iterator;
+ ASTORE 9
+ L5
+ FRAME FULL [net/minecraft/block/Block net/minecraft/world/World I I I I F I java/util/ArrayList java/util/Iterator] []
+ ALOAD 9
+ INVOKEINTERFACE java/util/Iterator.hasNext ()Z
+ IFEQ L1
+ ALOAD 9
+ INVOKEINTERFACE java/util/Iterator.next ()Ljava/lang/Object;
+ CHECKCAST net/minecraft/item/ItemStack
+ ASTORE 10
+ L6
+ LINENUMBER 810 L6
+ ALOAD 1
+ GETFIELD net/minecraft/world/World.rand : Ljava/util/Random;
+ INVOKEVIRTUAL java/util/Random.nextFloat ()F
+ FLOAD 6
+ FCMPG
+ IFGT L7
+ L8
+ LINENUMBER 812 L8
+ ALOAD 0
+ ALOAD 1
+ ILOAD 2
+ ILOAD 3
+ ILOAD 4
+ ALOAD 10
+ INVOKEVIRTUAL net/minecraft/block/Block.dropBlockAsItem (Lnet/minecraft/world/World;IIILnet/minecraft/item/ItemStack;)V
+ L7
+ LINENUMBER 814 L7
+ FRAME FULL [net/minecraft/block/Block net/minecraft/world/World I I I I F I java/util/ArrayList java/util/Iterator net/minecraft/item/ItemStack] []
+ GOTO L5
+ L1
+ LINENUMBER 816 L1
+ FRAME FULL [net/minecraft/block/Block net/minecraft/world/World I I I I F I] []
+ RETURN
+ L9
+ LOCALVARIABLE item Lnet/minecraft/item/ItemStack; L6 L7 10
+ LOCALVARIABLE items Ljava/util/ArrayList; L3 L1 8
+ // signature Ljava/util/ArrayList