mirror of
https://github.com/GTNewHorizons/ThaumicHorizons.git
synced 2026-10-26 14:33:47 +00:00
Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
6523b26038 | ||
|
|
5a6b05f13c | ||
|
|
51763e0f80 | ||
|
|
21ab790045 | ||
|
|
f42bcf230b | ||
|
|
e985a0c763 | ||
|
|
d9867a343e | ||
|
|
ec0a44d6dd | ||
|
|
b2186e92f9 | ||
|
|
f619f97928 | ||
|
|
f542637140 | ||
|
|
23469f5e5b | ||
|
|
c1730a50d9 | ||
|
|
1ef8e16e9c | ||
|
|
a084621884 | ||
|
|
f4f7e27bca | ||
|
|
db3f4e0cba | ||
|
|
2768e1b1eb | ||
|
|
0a54bd5465 | ||
|
|
892f8941e2 | ||
|
|
5b04ae1082 | ||
|
|
1dc5f139e5 | ||
|
|
ad2c1bcc5f | ||
|
|
8546cab959 | ||
|
|
f69e39227e | ||
|
|
06def1b332 | ||
|
|
a351ef46b4 | ||
|
|
33cc4943a7 | ||
|
|
5f37e3aa3d | ||
|
|
7eb409820b | ||
|
|
ce27ffd52d | ||
|
|
551cdf4a93 | ||
|
|
5a14114583 | ||
|
|
fc0cc6a074 | ||
|
|
47c06267c1 | ||
|
|
76258cd038 | ||
|
|
2ee312ccd1 | ||
|
|
5c7028c645 | ||
|
|
e94bc0d510 | ||
|
|
8a84cfcd4d | ||
|
|
52bd07d4c4 | ||
|
|
b75095d013 | ||
|
|
0c4a02cd0e | ||
|
|
b7b9c9a9b5 | ||
|
|
c9db9f26d1 | ||
|
|
15532b7fd0 | ||
|
|
e510cd9915 | ||
|
|
531fedbe37 | ||
|
|
6f9e5faafe | ||
|
|
43e607e578 | ||
|
|
4db45f94b6 | ||
|
|
2d57926762 | ||
|
|
7f42969bb8 | ||
|
|
b290dba600 | ||
|
|
ec59afb3a8 | ||
|
|
8026516a3b | ||
|
|
6676a54693 | ||
|
|
a63c0ab6ed | ||
|
|
73e77b70db | ||
|
|
ca1827a47b | ||
|
|
b2377724f4 | ||
|
|
7a22b94592 | ||
|
|
382234cc72 | ||
|
|
975c987d81 | ||
|
|
b574a509b2 | ||
|
|
c83c5795fd | ||
|
|
68f767e728 | ||
|
|
1e1aab9c7d | ||
|
|
7c697bbcb1 | ||
|
|
618164a27e | ||
|
|
48c8e68417 | ||
|
|
900cfe249b | ||
|
|
8a482aeaff | ||
|
|
6517272910 | ||
|
|
b4b80bd72c | ||
|
|
2ecc5e7c35 | ||
|
|
801a7f78a3 | ||
|
|
71df83d933 | ||
|
|
fc923e182c | ||
|
|
6984aaead7 | ||
|
|
df47180317 | ||
|
|
325fa23585 | ||
|
|
785bb27638 | ||
|
|
08fe020650 | ||
|
|
9f769476a6 | ||
|
|
d3fd6376dc | ||
|
|
f16650e95a | ||
|
|
3215c7c47a | ||
|
|
7112eb8f41 | ||
|
|
17e20e08fc | ||
|
|
9fb1d4b332 | ||
|
|
e6f2db0139 | ||
|
|
7d0738de7a | ||
|
|
39a295f3e5 | ||
|
|
d8fbdd145d | ||
|
|
87baa5963f | ||
|
|
673f37a1ec | ||
|
|
75a5c8be44 | ||
|
|
6be38cc693 | ||
|
|
f0dfce4c27 | ||
|
|
25de863764 | ||
|
|
29d3d2d25a | ||
|
|
26debe826f | ||
|
|
1e8cc79148 | ||
|
|
2012f27d74 | ||
|
|
ed7913739a | ||
|
|
ff212745a3 | ||
|
|
43d5d94c92 | ||
|
|
a21d447ed0 | ||
|
|
3f84e365e3 | ||
|
|
f9c2aa5c10 | ||
|
|
d7c261316f | ||
|
|
0bdbbb0d11 | ||
|
|
8323771c10 | ||
|
|
db13268550 | ||
|
|
e8e8ae934f | ||
|
|
33402b81ae | ||
|
|
9a0b266519 | ||
|
|
d3ecb3eab6 | ||
|
|
6a6952cb29 | ||
|
|
0cd8f3ecc2 | ||
|
|
8634f9e288 | ||
|
|
d01fd12b68 | ||
|
|
932c06c396 | ||
|
|
8b23575edb | ||
|
|
69d63f22b5 | ||
|
|
cbf90c89d3 | ||
|
|
ec3d51f69a | ||
|
|
69c22b51bc | ||
|
|
90bb0b6621 | ||
|
|
3ff1e2ae3d | ||
|
|
f768215031 | ||
|
|
c4ec1dadd3 | ||
|
|
3444b1132f | ||
|
|
9e7cfebeca | ||
|
|
89dd677196 | ||
|
|
e3945f8e84 | ||
|
|
cda63c4433 | ||
|
|
38c7e8d005 | ||
|
|
65d603bf6f | ||
|
|
4cf447e0a0 | ||
|
|
f629ad06b7 | ||
|
|
5032732d9a | ||
|
|
2505febd51 | ||
|
|
e229b31ef9 | ||
|
|
e7c5c19bb3 | ||
|
|
1225c68a9e | ||
|
|
fbe0a42337 | ||
|
|
10a2ef93a5 | ||
|
|
4af8524aea | ||
|
|
7bcac7294d | ||
|
|
932ee6e9f5 | ||
|
|
925f0a7bdd | ||
|
|
42223cb063 | ||
|
|
9dbf0b01a8 | ||
|
|
f4ea02919a | ||
|
|
8d6fc24926 | ||
|
|
84dc4a5460 | ||
|
|
9440ad7740 | ||
|
|
4217002a50 | ||
|
|
6bc61c3a9c | ||
|
|
1f7eb8e3a1 | ||
|
|
dff17c8bf8 | ||
|
|
8851295180 | ||
|
|
39ad037d16 | ||
|
|
aa1aa0359c | ||
|
|
755f2bb17a | ||
|
|
d9597ddd0f | ||
|
|
1a63684bbd |
No files matched your search
@@ -0,0 +1,2 @@
|
||||
# Ignore spotlessApply reformat
|
||||
f4ea02919a0ba18e9f2a83ed96068c7116e56ac3
|
||||
@@ -32,6 +32,8 @@
|
||||
*.[dD][lL][lL] binary
|
||||
*.[dD][yY][lL][iI][bB] binary
|
||||
*.[pP][sS][dD] binary
|
||||
*.[tT][tT][fF] binary
|
||||
*.[oO][tT][fF] binary
|
||||
|
||||
*.[pP][aA][tT][cC][hH] -text
|
||||
|
||||
|
||||
@@ -0,0 +1,62 @@
|
||||
name: Report Bug
|
||||
description: "Report a bug."
|
||||
body:
|
||||
- type: markdown
|
||||
attributes:
|
||||
value: "A bug/crash report with sufficient information and logs to reproduce and track down."
|
||||
- type: input
|
||||
id: discord
|
||||
attributes:
|
||||
label: Your GTNH Discord Username
|
||||
description: Leave empty if you don't have one, but this will make it harder to contact you if we need additional info.
|
||||
placeholder: "Example: Fake#1234"
|
||||
- type: input
|
||||
id: version
|
||||
attributes:
|
||||
label: Mod Version
|
||||
description: "What version of the Mod are you using?"
|
||||
placeholder: "Example: 1.0.0"
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
id: report
|
||||
attributes:
|
||||
label: Bug Report
|
||||
description: "Relevant information, as well as relevant logs attached such as `logs/fml-client-latest.log."
|
||||
placeholder: "Example: https://mclo.gs/ OR submit the file to github by dragging it to this textbox."
|
||||
validations:
|
||||
required: true
|
||||
- type: dropdown
|
||||
id: java
|
||||
attributes:
|
||||
label: Java Version
|
||||
description: What Java version are you using? It's worth mentioning that if you play on Java9+ you should try update to latest minor release (e.g. prefer Java 17.0.6 over 17.0.2) of that version.
|
||||
options:
|
||||
- Java 8
|
||||
- Java 9
|
||||
- Java 11
|
||||
- Java 17
|
||||
- Java 19
|
||||
- Java 20
|
||||
- Java 21
|
||||
- Other (Please Specify)
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
id: modlist
|
||||
attributes:
|
||||
label: Mod List or GTNH Pack Version
|
||||
description: "List of mods, ideally a minimal reproducible set (can be retrieved from latest.log). If using GTNH please indicate pack version and any changed mods, not the entire modlist."
|
||||
placeholder: "List of mods or GTNH Pack version goes here"
|
||||
validations:
|
||||
required: true
|
||||
- type: checkboxes
|
||||
id: final
|
||||
attributes:
|
||||
label: Final Checklist
|
||||
description: Certify that you read things
|
||||
options:
|
||||
- label: "I have searched the issues and haven't found a similar issue."
|
||||
required: true
|
||||
|
||||
|
||||
@@ -0,0 +1,28 @@
|
||||
name: Feature Request
|
||||
description: "Request a feature."
|
||||
body:
|
||||
- type: markdown
|
||||
attributes:
|
||||
value: "Please use this form to request features. We ask you check if it was already requested though"
|
||||
- type: input
|
||||
id: discord
|
||||
attributes:
|
||||
label: Your GTNH Discord Username
|
||||
description: Leave empty if you don't have one, but this will make it harder to contact you if we need additional info.
|
||||
placeholder: "Example: Wumpus#1234"
|
||||
- type: textarea
|
||||
id: request
|
||||
attributes:
|
||||
label: Feature Request
|
||||
description: "Relevant information, as well as relevant images"
|
||||
placeholder: "Example: https://mclo.gs/ OR submit the file to github by dragging it to this textbox."
|
||||
validations:
|
||||
required: true
|
||||
- type: checkboxes
|
||||
id: final
|
||||
attributes:
|
||||
label: Final Checklist
|
||||
description: Certify that you read things
|
||||
options:
|
||||
- label: "I have searched the issues and haven't found a similar issue."
|
||||
required: true
|
||||
@@ -0,0 +1,17 @@
|
||||
name: Optimize images
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
branches: [ master, main, release/** ]
|
||||
paths:
|
||||
- "**/*.png"
|
||||
|
||||
push:
|
||||
branches: [ master, main, release/** ]
|
||||
paths:
|
||||
- "**/*.png"
|
||||
|
||||
jobs:
|
||||
optimize-images:
|
||||
uses: GTNewHorizons/GTNH-Actions-Workflows/.github/workflows/optimize-images.yml@master
|
||||
secrets: inherit
|
||||
@@ -27,5 +27,7 @@ whitelist.json
|
||||
*.iws
|
||||
src/main/resources/mixins.*.json
|
||||
*.bat
|
||||
*.sh
|
||||
*.DS_Store
|
||||
!gradlew.bat
|
||||
layout.json
|
||||
+165
@@ -0,0 +1,165 @@
|
||||
GNU LESSER GENERAL PUBLIC LICENSE
|
||||
Version 3, 29 June 2007
|
||||
|
||||
Copyright (C) 2007 Free Software Foundation, Inc. <https://fsf.org/>
|
||||
Everyone is permitted to copy and distribute verbatim copies
|
||||
of this license document, but changing it is not allowed.
|
||||
|
||||
|
||||
This version of the GNU Lesser General Public License incorporates
|
||||
the terms and conditions of version 3 of the GNU General Public
|
||||
License, supplemented by the additional permissions listed below.
|
||||
|
||||
0. Additional Definitions.
|
||||
|
||||
As used herein, "this License" refers to version 3 of the GNU Lesser
|
||||
General Public License, and the "GNU GPL" refers to version 3 of the GNU
|
||||
General Public License.
|
||||
|
||||
"The Library" refers to a covered work governed by this License,
|
||||
other than an Application or a Combined Work as defined below.
|
||||
|
||||
An "Application" is any work that makes use of an interface provided
|
||||
by the Library, but which is not otherwise based on the Library.
|
||||
Defining a subclass of a class defined by the Library is deemed a mode
|
||||
of using an interface provided by the Library.
|
||||
|
||||
A "Combined Work" is a work produced by combining or linking an
|
||||
Application with the Library. The particular version of the Library
|
||||
with which the Combined Work was made is also called the "Linked
|
||||
Version".
|
||||
|
||||
The "Minimal Corresponding Source" for a Combined Work means the
|
||||
Corresponding Source for the Combined Work, excluding any source code
|
||||
for portions of the Combined Work that, considered in isolation, are
|
||||
based on the Application, and not on the Linked Version.
|
||||
|
||||
The "Corresponding Application Code" for a Combined Work means the
|
||||
object code and/or source code for the Application, including any data
|
||||
and utility programs needed for reproducing the Combined Work from the
|
||||
Application, but excluding the System Libraries of the Combined Work.
|
||||
|
||||
1. Exception to Section 3 of the GNU GPL.
|
||||
|
||||
You may convey a covered work under sections 3 and 4 of this License
|
||||
without being bound by section 3 of the GNU GPL.
|
||||
|
||||
2. Conveying Modified Versions.
|
||||
|
||||
If you modify a copy of the Library, and, in your modifications, a
|
||||
facility refers to a function or data to be supplied by an Application
|
||||
that uses the facility (other than as an argument passed when the
|
||||
facility is invoked), then you may convey a copy of the modified
|
||||
version:
|
||||
|
||||
a) under this License, provided that you make a good faith effort to
|
||||
ensure that, in the event an Application does not supply the
|
||||
function or data, the facility still operates, and performs
|
||||
whatever part of its purpose remains meaningful, or
|
||||
|
||||
b) under the GNU GPL, with none of the additional permissions of
|
||||
this License applicable to that copy.
|
||||
|
||||
3. Object Code Incorporating Material from Library Header Files.
|
||||
|
||||
The object code form of an Application may incorporate material from
|
||||
a header file that is part of the Library. You may convey such object
|
||||
code under terms of your choice, provided that, if the incorporated
|
||||
material is not limited to numerical parameters, data structure
|
||||
layouts and accessors, or small macros, inline functions and templates
|
||||
(ten or fewer lines in length), you do both of the following:
|
||||
|
||||
a) Give prominent notice with each copy of the object code that the
|
||||
Library is used in it and that the Library and its use are
|
||||
covered by this License.
|
||||
|
||||
b) Accompany the object code with a copy of the GNU GPL and this license
|
||||
document.
|
||||
|
||||
4. Combined Works.
|
||||
|
||||
You may convey a Combined Work under terms of your choice that,
|
||||
taken together, effectively do not restrict modification of the
|
||||
portions of the Library contained in the Combined Work and reverse
|
||||
engineering for debugging such modifications, if you also do each of
|
||||
the following:
|
||||
|
||||
a) Give prominent notice with each copy of the Combined Work that
|
||||
the Library is used in it and that the Library and its use are
|
||||
covered by this License.
|
||||
|
||||
b) Accompany the Combined Work with a copy of the GNU GPL and this license
|
||||
document.
|
||||
|
||||
c) For a Combined Work that displays copyright notices during
|
||||
execution, include the copyright notice for the Library among
|
||||
these notices, as well as a reference directing the user to the
|
||||
copies of the GNU GPL and this license document.
|
||||
|
||||
d) Do one of the following:
|
||||
|
||||
0) Convey the Minimal Corresponding Source under the terms of this
|
||||
License, and the Corresponding Application Code in a form
|
||||
suitable for, and under terms that permit, the user to
|
||||
recombine or relink the Application with a modified version of
|
||||
the Linked Version to produce a modified Combined Work, in the
|
||||
manner specified by section 6 of the GNU GPL for conveying
|
||||
Corresponding Source.
|
||||
|
||||
1) Use a suitable shared library mechanism for linking with the
|
||||
Library. A suitable mechanism is one that (a) uses at run time
|
||||
a copy of the Library already present on the user's computer
|
||||
system, and (b) will operate properly with a modified version
|
||||
of the Library that is interface-compatible with the Linked
|
||||
Version.
|
||||
|
||||
e) Provide Installation Information, but only if you would otherwise
|
||||
be required to provide such information under section 6 of the
|
||||
GNU GPL, and only to the extent that such information is
|
||||
necessary to install and execute a modified version of the
|
||||
Combined Work produced by recombining or relinking the
|
||||
Application with a modified version of the Linked Version. (If
|
||||
you use option 4d0, the Installation Information must accompany
|
||||
the Minimal Corresponding Source and Corresponding Application
|
||||
Code. If you use option 4d1, you must provide the Installation
|
||||
Information in the manner specified by section 6 of the GNU GPL
|
||||
for conveying Corresponding Source.)
|
||||
|
||||
5. Combined Libraries.
|
||||
|
||||
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 that are not Applications and are not covered by this
|
||||
License, and convey such a combined library under terms of your
|
||||
choice, if you do both of the following:
|
||||
|
||||
a) Accompany the combined library with a copy of the same work based
|
||||
on the Library, uncombined with any other library facilities,
|
||||
conveyed under the terms of this License.
|
||||
|
||||
b) Give prominent notice with the combined library that part of it
|
||||
is a work based on the Library, and explaining where to find the
|
||||
accompanying uncombined form of the same work.
|
||||
|
||||
6. Revised Versions of the GNU Lesser General Public License.
|
||||
|
||||
The Free Software Foundation may publish revised and/or new versions
|
||||
of the GNU 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 as you received it specifies that a certain numbered version
|
||||
of the GNU Lesser General Public License "or any later version"
|
||||
applies to it, you have the option of following the terms and
|
||||
conditions either of that published version or of any later version
|
||||
published by the Free Software Foundation. If the Library as you
|
||||
received it does not specify a version number of the GNU Lesser
|
||||
General Public License, you may choose any version of the GNU Lesser
|
||||
General Public License ever published by the Free Software Foundation.
|
||||
|
||||
If the Library as you received it specifies that a proxy can decide
|
||||
whether future versions of the GNU Lesser General Public License shall
|
||||
apply, that proxy's public statement of acceptance of any version is
|
||||
permanent authorization for you to choose that version for the
|
||||
Library.
|
||||
@@ -1 +1,16 @@
|
||||
Thaumic Horizons Thaumcraft Addon
|
||||
# Thaumic Horizons: GregTech New Horizons Fork
|
||||
|
||||
Curseforge link: https://www.curseforge.com/minecraft/mc-mods/thaumic-horizons
|
||||
|
||||
GTNH Changes are dual-licensed:
|
||||
For Kentington - MIT
|
||||
For everyone else, this code is licensed LGPL v3.0 or later.
|
||||
|
||||
Original code Copyright (c) 2015 Kentington
|
||||
|
||||
Explict permission to modify given here:
|
||||
https://discord.com/channels/181078474394566657/1029918255932
|
||||

|
||||

|
||||

|
||||

|
||||
+2
-1092
File diff suppressed because it is too large.
Load diff
+4
-3
@@ -1,9 +1,10 @@
|
||||
// Add your dependencies here
|
||||
|
||||
dependencies {
|
||||
compile('com.github.GTNewHorizons:Baubles:1.0.1.14:dev')
|
||||
api('com.github.GTNewHorizons:Baubles-Expanded:2.2.24-GTNH:dev')
|
||||
api('thaumcraft:Thaumcraft:1.7.10-4.2.3.5:dev')
|
||||
|
||||
compile('thaumcraft:Thaumcraft:1.7.10-4.2.3.5:dev')
|
||||
compileOnly('com.github.GTNewHorizons:GT5-Unofficial:5.09.54.168:dev') {transitive = false}
|
||||
|
||||
compileOnly('com.github.GTNewHorizons:GT5-Unofficial:5.09.41.50:dev') {transitive = false}
|
||||
runtimeOnlyNonPublishable('com.github.GTNewHorizons:AspectRecipeIndex:1.1.5:dev')
|
||||
}
|
||||
+203
-24
@@ -1,64 +1,243 @@
|
||||
# ExampleMod tag to use as Blowdryer (Spotless, etc.) settings version, leave empty to disable.
|
||||
# LOCAL to test local config updates.
|
||||
gtnh.settings.blowdryerTag = 0.2.0
|
||||
|
||||
# Human-readable mod name, available for mcmod.info population.
|
||||
modName = ThaumicHorizons
|
||||
|
||||
# This is a case-sensitive string to identify your mod. Convention is to use lower case.
|
||||
# Case-sensitive identifier string, available for mcmod.info population and used for automatic mixin JSON generation.
|
||||
# Conventionally lowercase.
|
||||
modId = ThaumicHorizons
|
||||
|
||||
# Root package of the mod, used to find various classes in other properties,
|
||||
# mcmod.info substitution, enabling assertions in run tasks, etc.
|
||||
modGroup = com.kentington.thaumichorizons
|
||||
|
||||
# WHY is there no version field?
|
||||
# The build script relies on git to provide a version via tags. It is super easy and will enable you to always know the
|
||||
# code base or your binary. Check out this tutorial: https://blog.mattclemente.com/2017/10/13/versioning-with-git-tags/
|
||||
# Whether to use modGroup as the maven publishing group.
|
||||
# When false, com.github.GTNewHorizons is used.
|
||||
useModGroupForPublishing = false
|
||||
|
||||
# Will update your build.gradle automatically whenever an update is available
|
||||
# Updates your build.gradle and settings.gradle automatically whenever an update is available.
|
||||
autoUpdateBuildScript = false
|
||||
|
||||
# Version of Minecraft to target
|
||||
minecraftVersion = 1.7.10
|
||||
|
||||
# Version of Minecraft Forge to target
|
||||
forgeVersion = 10.13.4.1614
|
||||
|
||||
# Select a username for testing your mod with breakpoints. You may leave this empty for a random username each time you
|
||||
# restart Minecraft in development. Choose this dependent on your mod:
|
||||
# Do you need consistent player progressing (for example Thaumcraft)? -> Select a name
|
||||
# Do you need to test how your custom blocks interacts with a player that is not the owner? -> leave name empty
|
||||
# Specify an MCP channel for dependency deobfuscation and the deobfParams task.
|
||||
channel = stable
|
||||
|
||||
# Specify an MCP mappings version for dependency deobfuscation and the deobfParams task.
|
||||
mappingsVersion = 12
|
||||
|
||||
# Defines other MCP mappings for dependency deobfuscation.
|
||||
remoteMappings = https\://raw.githubusercontent.com/MinecraftForge/FML/1.7.10/conf/
|
||||
|
||||
# Select a default username for testing your mod. You can always override this per-run by running
|
||||
# `./gradlew runClient --username=AnotherPlayer`, or configuring this command in your IDE.
|
||||
developmentEnvironmentUserName = Developer
|
||||
|
||||
# Define a source file of your project with:
|
||||
# Enables modern Java syntax support. Valid values:
|
||||
# - false: No modern syntax, Java 8 only
|
||||
# - jabel: Jabel syntax-only support, compiles to J8 bytecode
|
||||
# - jvmDowngrader: Full modern Java via JVM Downgrader (syntax + stdlib APIs)
|
||||
# - modern: Native modern Java bytecode, no downgrading
|
||||
enableModernJavaSyntax = jabel
|
||||
|
||||
# If set, ignores the above setting and compiles with the given toolchain. This may cause unexpected issues,
|
||||
# and should *not* be used in most situations. -1 disables this.
|
||||
# forceToolchainVersion = -1
|
||||
|
||||
# Target JVM version for JVM Downgrader bytecode downgrading.
|
||||
# Only used when enableModernJavaSyntax = jvmDowngrader
|
||||
# downgradeTargetVersion = 8
|
||||
|
||||
# Comma-separated list of Java versions for multi-release jar support (JVM Downgrader only).
|
||||
# Classes will be available in META-INF/versions/N/ for each version N in this list.
|
||||
# Default: "21,25" (J25+ gets native classes, J21-24 gets partial downgrade, J8-20 gets full downgrade).
|
||||
# jvmDowngraderMultiReleaseVersions = 21,25
|
||||
|
||||
# Specifies how JVM Downgrader API stubs are provided. Options:
|
||||
# - shade: Shade minimized stubs into the jar
|
||||
# - gtnhlib: GTNHLib provides stubs at runtime (adds version constraint)
|
||||
# - external: Another dependency provides stubs (no constraint, no warning)
|
||||
# - (empty): Warning reminding you to configure stubs
|
||||
# Note: 'shade' option requires you to verify license compliance, see: https://github.com/unimined/JvmDowngrader/blob/main/LICENSE.md
|
||||
# jvmDowngraderStubsProvider =
|
||||
|
||||
# Enables injecting missing generics into the decompiled source code for a better coding experience.
|
||||
# Turns most publicly visible List, Map, etc. into proper List<E>, Map<K, V> types.
|
||||
enableGenericInjection = true
|
||||
|
||||
# Generate a class with a String field for the mod version named as defined below.
|
||||
# If generateGradleTokenClass is empty or not missing, no such class will be generated.
|
||||
# If gradleTokenVersion is empty or missing, the field will not be present in the class.
|
||||
generateGradleTokenClass =
|
||||
|
||||
# Name of the token containing the project's current version to generate/replace.
|
||||
gradleTokenVersion = GRADLETOKEN_VERSION
|
||||
|
||||
# [DEPRECATED] Mod ID replacement token.
|
||||
gradleTokenModId =
|
||||
|
||||
# [DEPRECATED] Mod name replacement token.
|
||||
gradleTokenModName =
|
||||
|
||||
# [DEPRECATED] Mod Group replacement token.
|
||||
gradleTokenGroupName =
|
||||
|
||||
# [DEPRECATED]
|
||||
# Multiple source files can be defined here by providing a comma-separated list: Class1.java,Class2.java,Class3.java
|
||||
# public static final String VERSION = "GRADLETOKEN_VERSION";
|
||||
# The string's content will be replaced with your mod's version when compiled. You should use this to specify your mod's
|
||||
# version in @Mod([...], version = VERSION, [...])
|
||||
# Leave these properties empty to skip individual token replacements
|
||||
# version in @Mod([...], version = VERSION, [...]).
|
||||
# Leave these properties empty to skip individual token replacements.
|
||||
replaceGradleTokenInFile = ThaumicHorizons.java
|
||||
gradleTokenModId =
|
||||
gradleTokenModName =
|
||||
gradleTokenVersion = GRADLETOKEN_VERSION
|
||||
gradleTokenGroupName =
|
||||
|
||||
# In case your mod provides an API for other mods to implement you may declare its package here. Otherwise, you can
|
||||
# leave this property empty.
|
||||
# Example value: apiPackage = api + modGroup = com.myname.mymodid -> com.myname.mymodid.api
|
||||
# Example value: (apiPackage = api) + (modGroup = com.myname.mymodid) -> com.myname.mymodid.api
|
||||
apiPackage =
|
||||
|
||||
# Specify the configuration file for Forge's access transformers here. It must be placed into /src/main/resources/META-INF/
|
||||
# Example value: mymodid_at.cfg
|
||||
# There can be multiple files in a space-separated list.
|
||||
# Example value: mymodid_at.cfg nei_at.cfg
|
||||
accessTransformersFile =
|
||||
|
||||
# Provides setup for Mixins if enabled. If you don't know what mixins are: Keep it disabled!
|
||||
usesMixins = false
|
||||
|
||||
# Set to a non-empty string to configure mixins in a separate source set under src/VALUE, instead of src/main.
|
||||
# This can speed up compile times thanks to not running the mixin annotation processor on all input sources.
|
||||
# Mixin classes will have access to "main" classes, but not the other way around.
|
||||
separateMixinSourceSet =
|
||||
|
||||
# Adds some debug arguments like verbose output and class export.
|
||||
usesMixinDebug = false
|
||||
|
||||
# Specify the location of your implementation of IMixinConfigPlugin. Leave it empty otherwise.
|
||||
mixinPlugin =
|
||||
# Specify the package that contains all of your Mixins. You may only place Mixins in this package or the build will fail!
|
||||
|
||||
# Specify the package that contains all of your Mixins. The package must exist or
|
||||
# the build will fail. If you have a package property defined in your mixins.<modid>.json,
|
||||
# it must match with this or the build will fail.
|
||||
mixinsPackage =
|
||||
|
||||
# Specify the core mod entry class if you use a core mod. This class must implement IFMLLoadingPlugin!
|
||||
# This parameter is for legacy compatibility only
|
||||
# Example value: coreModClass = asm.FMLPlugin + modGroup = com.myname.mymodid -> com.myname.mymodid.asm.FMLPlugin
|
||||
# Example value: (coreModClass = asm.FMLPlugin) + (modGroup = com.myname.mymodid) -> com.myname.mymodid.asm.FMLPlugin
|
||||
coreModClass =
|
||||
|
||||
# If your project is only a consolidation of mixins or a core mod and does NOT contain a 'normal' mod ( = some class
|
||||
# that is annotated with @Mod) you want this to be true. When in doubt: leave it on false!
|
||||
containsMixinsAndOrCoreModOnly = false
|
||||
|
||||
# If enabled, you may use 'shadowCompile' for dependencies. They will be integrated in your jar. It is your
|
||||
# responsibility check the licence and request permission for distribution, if required.
|
||||
# Enables Mixins even if this mod doesn't use them, useful if one of the dependencies uses mixins.
|
||||
forceEnableMixins = false
|
||||
|
||||
# If enabled, you may use 'shadowCompile' for dependencies. They will be integrated into your jar. It is your
|
||||
# responsibility to check the license and request permission for distribution if required.
|
||||
usesShadowedDependencies = false
|
||||
|
||||
# Optional parameter to customize the produced artifacts. Use this to preserver artifact naming when migrating older
|
||||
# If disabled, won't remove unused classes from shadowed dependencies. Some libraries use reflection to access
|
||||
# their own classes, making the minimization unreliable.
|
||||
minimizeShadowedDependencies = true
|
||||
|
||||
# If disabled, won't rename the shadowed classes.
|
||||
relocateShadowedDependencies = true
|
||||
|
||||
# Adds CurseMaven, Modrinth, and some more well-known 1.7.10 repositories.
|
||||
includeWellKnownRepositories = true
|
||||
|
||||
# A list of repositories to exclude from the includeWellKnownRepositories setting. Should be a space separated
|
||||
# list of strings, with the acceptable keys being(case does not matter):
|
||||
# cursemaven
|
||||
# modrinth
|
||||
excludeWellKnownRepositories =
|
||||
|
||||
# Change these to your Maven coordinates if you want to publish to a custom Maven repository instead of the default GTNH Maven.
|
||||
# Authenticate with the MAVEN_USER and MAVEN_PASSWORD environment variables.
|
||||
# If you need a more complex setup disable maven publishing here and add a publishing repository to addon.gradle.
|
||||
usesMavenPublishing = true
|
||||
|
||||
# Maven repository to publish the mod to.
|
||||
# mavenPublishUrl = https\://nexus.gtnewhorizons.com/repository/releases/
|
||||
|
||||
# Publishing to Modrinth requires you to set the MODRINTH_TOKEN environment variable to your current Modrinth API token.
|
||||
#
|
||||
# The project's ID on Modrinth. Can be either the slug or the ID.
|
||||
# Leave this empty if you don't want to publish to Modrinth.
|
||||
modrinthProjectId = 1wDWP1tN
|
||||
|
||||
# The project's relations on Modrinth. You can use this to refer to other projects on Modrinth.
|
||||
# Syntax: scope1-type1:name1;scope2-type2:name2;...
|
||||
# Where scope can be one of [required, optional, incompatible, embedded],
|
||||
# type can be one of [project, version],
|
||||
# and the name is the Modrinth project or version slug/id of the other mod.
|
||||
# Example: required-project:fplib;optional-project:gasstation;incompatible-project:gregtech
|
||||
# Note: UniMixins is automatically set as a required dependency if usesMixins = true.
|
||||
modrinthRelations =
|
||||
|
||||
# Publishing to CurseForge requires you to set the CURSEFORGE_TOKEN environment variable to one of your CurseForge API tokens.
|
||||
#
|
||||
# The project's numeric ID on CurseForge. You can find this in the About Project box.
|
||||
# Leave this empty if you don't want to publish on CurseForge.
|
||||
curseForgeProjectId = 227914
|
||||
|
||||
# Comma-separated supported CurseForge environments: client, server (case-insensitive).
|
||||
# Use client or server for mods that only support one environment. Defaults to client,server.
|
||||
# These tags describe where the mod can run, not whether installation is required on both sides.
|
||||
curseForgeEnvironments = client,server
|
||||
|
||||
# The project's relations on CurseForge. You can use this to refer to other projects on CurseForge.
|
||||
# Syntax: type1:name1;type2:name2;...
|
||||
# Where type can be one of [requiredDependency, embeddedLibrary, optionalDependency, tool, incompatible],
|
||||
# and the name is the CurseForge project slug of the other mod.
|
||||
# Example: requiredDependency:railcraft;embeddedLibrary:cofhlib;incompatible:buildcraft
|
||||
# Note: UniMixins is automatically set as a required dependency if usesMixins = true.
|
||||
curseForgeRelations = requiredDependency\:thaumcraft
|
||||
|
||||
# Optional parameter to customize the produced artifacts. Use this to preserve artifact naming when migrating older
|
||||
# projects. New projects should not use this parameter.
|
||||
#customArchiveBaseName =
|
||||
# customArchiveBaseName =
|
||||
|
||||
# Optional parameter to customize the default working directory used by the runClient* tasks. Relative to the project directory.
|
||||
# runClientWorkingDirectory = run/client
|
||||
|
||||
# Optional parameter to customize the default working directory used by the runServer* tasks. Relative to the project directory.
|
||||
# runServerWorkingDirectory = run/server
|
||||
|
||||
# Optional parameter to have the build automatically fail if an illegal version is used.
|
||||
# This can be useful if you e.g. only want to allow versions in the form of '1.1.xxx'.
|
||||
# The check is ONLY performed if the version is a git tag.
|
||||
# Note: the specified string must be escaped, so e.g. 1\\.1\\.\\d+ instead of 1\.1\.\d+
|
||||
# versionPattern =
|
||||
|
||||
# Uncomment to prevent the source code from being published.
|
||||
# noPublishedSources = true
|
||||
|
||||
# Uncomment this to disable Spotless checks.
|
||||
# This should only be uncommented to keep it easier to sync with upstream/other forks.
|
||||
# That is, if there is no other active fork/upstream, NEVER change this.
|
||||
# disableSpotless = true
|
||||
|
||||
# Uncomment this to disable Checkstyle checks (currently wildcard import check).
|
||||
# disableCheckstyle = true
|
||||
|
||||
# Override the IDEA build type. Valid values are: "" (leave blank, do not override), "idea" (force use native IDEA build), "gradle"
|
||||
# (force use delegated build).
|
||||
# This is meant to be set in $HOME/.gradle/gradle.properties.
|
||||
# e.g. add "systemProp.org.gradle.project.ideaOverrideBuildType=idea" will override the build type to be native build.
|
||||
# WARNING: If you do use this option, it will overwrite whatever you have in your existing projects. This might not be what you want!
|
||||
# Usually there is no need to uncomment this here as other developers do not necessarily use the same build type as you.
|
||||
# ideaOverrideBuildType = idea
|
||||
|
||||
# Whether IDEA should run spotless checks when pressing the Build button.
|
||||
# This is meant to be set in $HOME/.gradle/gradle.properties.
|
||||
# ideaCheckSpotlessOnBuild = true
|
||||
|
||||
# Non-GTNH properties
|
||||
org.gradle.configuration-cache = true
|
||||
org.gradle.parallel = true
|
||||
@@ -0,0 +1,12 @@
|
||||
#This file is generated by updateDaemonJvm
|
||||
toolchainUrl.FREE_BSD.AARCH64=https\://api.foojay.io/disco/v3.0/ids/539ea72837c6244075f8ee037babc29e/redirect
|
||||
toolchainUrl.FREE_BSD.X86_64=https\://api.foojay.io/disco/v3.0/ids/876dbbf00bf4ef6190f7da074cee903a/redirect
|
||||
toolchainUrl.LINUX.AARCH64=https\://api.foojay.io/disco/v3.0/ids/539ea72837c6244075f8ee037babc29e/redirect
|
||||
toolchainUrl.LINUX.X86_64=https\://api.foojay.io/disco/v3.0/ids/876dbbf00bf4ef6190f7da074cee903a/redirect
|
||||
toolchainUrl.MAC_OS.AARCH64=https\://api.foojay.io/disco/v3.0/ids/9064f22734b42ac03e85df04b632e167/redirect
|
||||
toolchainUrl.MAC_OS.X86_64=https\://api.foojay.io/disco/v3.0/ids/4d0277c49991306ac78048580fe34bcf/redirect
|
||||
toolchainUrl.UNIX.AARCH64=https\://api.foojay.io/disco/v3.0/ids/539ea72837c6244075f8ee037babc29e/redirect
|
||||
toolchainUrl.UNIX.X86_64=https\://api.foojay.io/disco/v3.0/ids/876dbbf00bf4ef6190f7da074cee903a/redirect
|
||||
toolchainUrl.WINDOWS.AARCH64=https\://api.foojay.io/disco/v3.0/ids/a9fa3b809e484a1e1ac4308a5dda661a/redirect
|
||||
toolchainUrl.WINDOWS.X86_64=https\://api.foojay.io/disco/v3.0/ids/aa99913fa6d767d899ffc96082da01ca/redirect
|
||||
toolchainVersion=25
|
||||
Vendored
BIN
Binary file not shown.
+5
-1
@@ -1,5 +1,9 @@
|
||||
distributionBase=GRADLE_USER_HOME
|
||||
distributionPath=wrapper/dists
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-6.9.1-bin.zip
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-9.7.1-bin.zip
|
||||
networkTimeout=10000
|
||||
retries=0
|
||||
retryBackOffMs=500
|
||||
validateDistributionUrl=true
|
||||
zipStoreBase=GRADLE_USER_HOME
|
||||
zipStorePath=wrapper/dists
|
||||
@@ -1,7 +1,7 @@
|
||||
#!/usr/bin/env sh
|
||||
#!/bin/sh
|
||||
|
||||
#
|
||||
# Copyright 2015 the original author or authors.
|
||||
# Copyright © 2015 the original authors.
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
@@ -15,80 +15,114 @@
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
#
|
||||
|
||||
##############################################################################
|
||||
##
|
||||
## Gradle start up script for UN*X
|
||||
##
|
||||
#
|
||||
# gradlew start up script for POSIX generated by Gradle.
|
||||
#
|
||||
# Important for running:
|
||||
#
|
||||
# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is
|
||||
# noncompliant, but you have some other compliant shell such as ksh or
|
||||
# bash, then to run this script, type that shell name before the whole
|
||||
# command line, like:
|
||||
#
|
||||
# ksh gradlew
|
||||
#
|
||||
# Busybox and similar reduced shells will NOT work, because this script
|
||||
# requires all of these POSIX shell features:
|
||||
# * functions;
|
||||
# * expansions «$var», «${var}», «${var:-default}», «${var+SET}»,
|
||||
# «${var#prefix}», «${var%suffix}», and «$( cmd )»;
|
||||
# * compound commands having a testable exit status, especially «case»;
|
||||
# * various built-in commands including «command», «set», and «ulimit».
|
||||
#
|
||||
# Important for patching:
|
||||
#
|
||||
# (2) This script targets any POSIX shell, so it avoids extensions provided
|
||||
# by Bash, Ksh, etc; in particular arrays are avoided.
|
||||
#
|
||||
# The "traditional" practice of packing multiple parameters into a
|
||||
# space-separated string is a well documented source of bugs and security
|
||||
# problems, so this is (mostly) avoided, by progressively accumulating
|
||||
# options in "$@", and eventually passing that to Java.
|
||||
#
|
||||
# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS,
|
||||
# and GRADLE_OPTS) rely on word-splitting, this is performed explicitly;
|
||||
# see the in-line comments for details.
|
||||
#
|
||||
# There are tweaks for specific operating systems such as AIX, CygWin,
|
||||
# Darwin, MinGW, and NonStop.
|
||||
#
|
||||
# (3) This script is generated from the Groovy template
|
||||
# https://github.com/gradle/gradle/blob/3d91ce3b8caaf77ad09f381f43615b715b53f72c/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
|
||||
# within the Gradle project.
|
||||
#
|
||||
# You can find Gradle at https://github.com/gradle/gradle/.
|
||||
#
|
||||
##############################################################################
|
||||
|
||||
# Attempt to set APP_HOME
|
||||
|
||||
# Resolve links: $0 may be a link
|
||||
PRG="$0"
|
||||
# Need this for relative symlinks.
|
||||
while [ -h "$PRG" ] ; do
|
||||
ls=`ls -ld "$PRG"`
|
||||
link=`expr "$ls" : '.*-> \(.*\)$'`
|
||||
if expr "$link" : '/.*' > /dev/null; then
|
||||
PRG="$link"
|
||||
else
|
||||
PRG=`dirname "$PRG"`"/$link"
|
||||
fi
|
||||
app_path=$0
|
||||
|
||||
# Need this for daisy-chained symlinks.
|
||||
while
|
||||
APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path
|
||||
[ -h "$app_path" ]
|
||||
do
|
||||
ls=$( ls -ld "$app_path" )
|
||||
link=${ls#*' -> '}
|
||||
case $link in #(
|
||||
/*) app_path=$link ;; #(
|
||||
*) app_path=$APP_HOME$link ;;
|
||||
esac
|
||||
done
|
||||
SAVED="`pwd`"
|
||||
cd "`dirname \"$PRG\"`/" >/dev/null
|
||||
APP_HOME="`pwd -P`"
|
||||
cd "$SAVED" >/dev/null
|
||||
|
||||
APP_NAME="Gradle"
|
||||
APP_BASE_NAME=`basename "$0"`
|
||||
|
||||
# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
|
||||
DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
|
||||
# This is normally unused
|
||||
# shellcheck disable=SC2034
|
||||
APP_BASE_NAME=${0##*/}
|
||||
# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036)
|
||||
APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit
|
||||
|
||||
# Use the maximum available, or set MAX_FD != -1 to use that value.
|
||||
MAX_FD="maximum"
|
||||
MAX_FD=maximum
|
||||
|
||||
warn () {
|
||||
echo "$*"
|
||||
}
|
||||
} >&2
|
||||
|
||||
die () {
|
||||
echo
|
||||
echo "$*"
|
||||
echo
|
||||
exit 1
|
||||
}
|
||||
} >&2
|
||||
|
||||
# OS specific support (must be 'true' or 'false').
|
||||
cygwin=false
|
||||
msys=false
|
||||
darwin=false
|
||||
nonstop=false
|
||||
case "`uname`" in
|
||||
CYGWIN* )
|
||||
cygwin=true
|
||||
;;
|
||||
Darwin* )
|
||||
darwin=true
|
||||
;;
|
||||
MINGW* )
|
||||
msys=true
|
||||
;;
|
||||
NONSTOP* )
|
||||
nonstop=true
|
||||
;;
|
||||
case "$( uname )" in #(
|
||||
CYGWIN* ) cygwin=true ;; #(
|
||||
Darwin* ) darwin=true ;; #(
|
||||
MSYS* | MINGW* ) msys=true ;; #(
|
||||
NONSTOP* ) nonstop=true ;;
|
||||
esac
|
||||
|
||||
CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
|
||||
|
||||
|
||||
# Determine the Java command to use to start the JVM.
|
||||
if [ -n "$JAVA_HOME" ] ; then
|
||||
if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
|
||||
# IBM's JDK on AIX uses strange locations for the executables
|
||||
JAVACMD="$JAVA_HOME/jre/sh/java"
|
||||
JAVACMD=$JAVA_HOME/jre/sh/java
|
||||
else
|
||||
JAVACMD="$JAVA_HOME/bin/java"
|
||||
JAVACMD=$JAVA_HOME/bin/java
|
||||
fi
|
||||
if [ ! -x "$JAVACMD" ] ; then
|
||||
die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
|
||||
@@ -97,92 +131,118 @@ Please set the JAVA_HOME variable in your environment to match the
|
||||
location of your Java installation."
|
||||
fi
|
||||
else
|
||||
JAVACMD="java"
|
||||
which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
|
||||
JAVACMD=java
|
||||
if ! command -v java >/dev/null 2>&1
|
||||
then
|
||||
die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
|
||||
|
||||
Please set the JAVA_HOME variable in your environment to match the
|
||||
location of your Java installation."
|
||||
fi
|
||||
fi
|
||||
|
||||
# Increase the maximum file descriptors if we can.
|
||||
if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then
|
||||
MAX_FD_LIMIT=`ulimit -H -n`
|
||||
if [ $? -eq 0 ] ; then
|
||||
if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then
|
||||
MAX_FD="$MAX_FD_LIMIT"
|
||||
fi
|
||||
ulimit -n $MAX_FD
|
||||
if [ $? -ne 0 ] ; then
|
||||
warn "Could not set maximum file descriptor limit: $MAX_FD"
|
||||
fi
|
||||
else
|
||||
warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT"
|
||||
fi
|
||||
fi
|
||||
|
||||
# For Darwin, add options to specify how the application appears in the dock
|
||||
if $darwin; then
|
||||
GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\""
|
||||
fi
|
||||
|
||||
# For Cygwin or MSYS, switch paths to Windows format before running java
|
||||
if [ "$cygwin" = "true" -o "$msys" = "true" ] ; then
|
||||
APP_HOME=`cygpath --path --mixed "$APP_HOME"`
|
||||
CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
|
||||
JAVACMD=`cygpath --unix "$JAVACMD"`
|
||||
|
||||
# We build the pattern for arguments to be converted via cygpath
|
||||
ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null`
|
||||
SEP=""
|
||||
for dir in $ROOTDIRSRAW ; do
|
||||
ROOTDIRS="$ROOTDIRS$SEP$dir"
|
||||
SEP="|"
|
||||
done
|
||||
OURCYGPATTERN="(^($ROOTDIRS))"
|
||||
# Add a user-defined pattern to the cygpath arguments
|
||||
if [ "$GRADLE_CYGPATTERN" != "" ] ; then
|
||||
OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)"
|
||||
fi
|
||||
# Now convert the arguments - kludge to limit ourselves to /bin/sh
|
||||
i=0
|
||||
for arg in "$@" ; do
|
||||
CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -`
|
||||
CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option
|
||||
|
||||
if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition
|
||||
eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"`
|
||||
else
|
||||
eval `echo args$i`="\"$arg\""
|
||||
fi
|
||||
i=$((i+1))
|
||||
done
|
||||
case $i in
|
||||
(0) set -- ;;
|
||||
(1) set -- "$args0" ;;
|
||||
(2) set -- "$args0" "$args1" ;;
|
||||
(3) set -- "$args0" "$args1" "$args2" ;;
|
||||
(4) set -- "$args0" "$args1" "$args2" "$args3" ;;
|
||||
(5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
|
||||
(6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
|
||||
(7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
|
||||
(8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
|
||||
(9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
|
||||
if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then
|
||||
case $MAX_FD in #(
|
||||
max*)
|
||||
# In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked.
|
||||
# shellcheck disable=SC2039,SC3045
|
||||
MAX_FD=$( ulimit -H -n ) ||
|
||||
warn "Could not query maximum file descriptor limit"
|
||||
esac
|
||||
case $MAX_FD in #(
|
||||
'' | soft) :;; #(
|
||||
*)
|
||||
# In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked.
|
||||
# shellcheck disable=SC2039,SC3045
|
||||
ulimit -n "$MAX_FD" ||
|
||||
warn "Could not set maximum file descriptor limit to $MAX_FD"
|
||||
esac
|
||||
fi
|
||||
|
||||
# Escape application args
|
||||
save () {
|
||||
for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done
|
||||
echo " "
|
||||
}
|
||||
APP_ARGS=$(save "$@")
|
||||
# Collect all arguments for the java command, stacking in reverse order:
|
||||
# * args from the command line
|
||||
# * the main class name
|
||||
# * -classpath
|
||||
# * -D...appname settings
|
||||
# * --module-path (only if needed)
|
||||
# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables.
|
||||
|
||||
# Collect all arguments for the java command, following the shell quoting and substitution rules
|
||||
eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS"
|
||||
# For Cygwin or MSYS, switch paths to Windows format before running java
|
||||
if "$cygwin" || "$msys" ; then
|
||||
APP_HOME=$( cygpath --path --mixed "$APP_HOME" )
|
||||
|
||||
# by default we should be in the correct project dir, but when run from Finder on Mac, the cwd is wrong
|
||||
if [ "$(uname)" = "Darwin" ] && [ "$HOME" = "$PWD" ]; then
|
||||
cd "$(dirname "$0")"
|
||||
JAVACMD=$( cygpath --unix "$JAVACMD" )
|
||||
|
||||
# Now convert the arguments - kludge to limit ourselves to /bin/sh
|
||||
for arg do
|
||||
if
|
||||
case $arg in #(
|
||||
-*) false ;; # don't mess with options #(
|
||||
/?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath
|
||||
[ -e "$t" ] ;; #(
|
||||
*) false ;;
|
||||
esac
|
||||
then
|
||||
arg=$( cygpath --path --ignore --mixed "$arg" )
|
||||
fi
|
||||
# Roll the args list around exactly as many times as the number of
|
||||
# args, so each arg winds up back in the position where it started, but
|
||||
# possibly modified.
|
||||
#
|
||||
# NB: a `for` loop captures its iteration list before it begins, so
|
||||
# changing the positional parameters here affects neither the number of
|
||||
# iterations, nor the values presented in `arg`.
|
||||
shift # remove old arg
|
||||
set -- "$@" "$arg" # push replacement arg
|
||||
done
|
||||
fi
|
||||
|
||||
|
||||
# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
|
||||
DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
|
||||
|
||||
# Collect all arguments for the java command:
|
||||
# * DEFAULT_JVM_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments,
|
||||
# and any embedded shellness will be escaped.
|
||||
# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be
|
||||
# treated as '${Hostname}' itself on the command line.
|
||||
|
||||
set -- \
|
||||
"-Dorg.gradle.appname=$APP_BASE_NAME" \
|
||||
-jar "$APP_HOME/gradle/wrapper/gradle-wrapper.jar" \
|
||||
"$@"
|
||||
|
||||
# Stop when "xargs" is not available.
|
||||
if ! command -v xargs >/dev/null 2>&1
|
||||
then
|
||||
die "xargs is not available"
|
||||
fi
|
||||
|
||||
# Use "xargs" to parse quoted args.
|
||||
#
|
||||
# With -n1 it outputs one arg per line, with the quotes and backslashes removed.
|
||||
#
|
||||
# In Bash we could simply go:
|
||||
#
|
||||
# readarray ARGS < <( xargs -n1 <<<"$var" ) &&
|
||||
# set -- "${ARGS[@]}" "$@"
|
||||
#
|
||||
# but POSIX shell has neither arrays nor command substitution, so instead we
|
||||
# post-process each arg (as a line of input to sed) to backslash-escape any
|
||||
# character that might be a shell metacharacter, then use eval to reverse
|
||||
# that process (while maintaining the separation between arguments), and wrap
|
||||
# the whole thing up as a single "set" statement.
|
||||
#
|
||||
# This will of course break if any of these variables contains a newline or
|
||||
# an unmatched quote.
|
||||
#
|
||||
|
||||
eval "set -- $(
|
||||
printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" |
|
||||
xargs -n1 |
|
||||
sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' |
|
||||
tr '\n' ' '
|
||||
)" '"$@"'
|
||||
|
||||
exec "$JAVACMD" "$@"
|
||||
Vendored
+32
-50
@@ -13,22 +13,28 @@
|
||||
@rem See the License for the specific language governing permissions and
|
||||
@rem limitations under the License.
|
||||
@rem
|
||||
@rem SPDX-License-Identifier: Apache-2.0
|
||||
@rem
|
||||
|
||||
@if "%DEBUG%" == "" @echo off
|
||||
@if "%DEBUG%"=="" @echo off
|
||||
@rem ##########################################################################
|
||||
@rem
|
||||
@rem Gradle startup script for Windows
|
||||
@rem gradlew startup script for Windows
|
||||
@rem
|
||||
@rem ##########################################################################
|
||||
|
||||
@rem Set local scope for the variables with windows NT shell
|
||||
if "%OS%"=="Windows_NT" setlocal
|
||||
@rem Set local scope for the variables, and ensure extensions are enabled
|
||||
setlocal EnableExtensions
|
||||
|
||||
set DIRNAME=%~dp0
|
||||
if "%DIRNAME%" == "" set DIRNAME=.
|
||||
if "%DIRNAME%"=="" set DIRNAME=.
|
||||
@rem This is normally unused
|
||||
set APP_BASE_NAME=%~n0
|
||||
set APP_HOME=%DIRNAME%
|
||||
|
||||
@rem Resolve any "." and ".." in APP_HOME to make it shorter.
|
||||
for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi
|
||||
|
||||
@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
|
||||
set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m"
|
||||
|
||||
@@ -37,64 +43,40 @@ if defined JAVA_HOME goto findJavaFromJavaHome
|
||||
|
||||
set JAVA_EXE=java.exe
|
||||
%JAVA_EXE% -version >NUL 2>&1
|
||||
if "%ERRORLEVEL%" == "0" goto init
|
||||
if %ERRORLEVEL% equ 0 goto execute
|
||||
|
||||
echo.
|
||||
echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
|
||||
echo.
|
||||
echo Please set the JAVA_HOME variable in your environment to match the
|
||||
echo location of your Java installation.
|
||||
echo. 1>&2
|
||||
echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2
|
||||
echo. 1>&2
|
||||
echo Please set the JAVA_HOME variable in your environment to match the 1>&2
|
||||
echo location of your Java installation. 1>&2
|
||||
|
||||
goto fail
|
||||
"%COMSPEC%" /c exit 1
|
||||
|
||||
:findJavaFromJavaHome
|
||||
set JAVA_HOME=%JAVA_HOME:"=%
|
||||
set JAVA_EXE=%JAVA_HOME%/bin/java.exe
|
||||
|
||||
if exist "%JAVA_EXE%" goto init
|
||||
if exist "%JAVA_EXE%" goto execute
|
||||
|
||||
echo.
|
||||
echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
|
||||
echo.
|
||||
echo Please set the JAVA_HOME variable in your environment to match the
|
||||
echo location of your Java installation.
|
||||
echo. 1>&2
|
||||
echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2
|
||||
echo. 1>&2
|
||||
echo Please set the JAVA_HOME variable in your environment to match the 1>&2
|
||||
echo location of your Java installation. 1>&2
|
||||
|
||||
goto fail
|
||||
|
||||
:init
|
||||
@rem Get command-line arguments, handling Windows variants
|
||||
|
||||
if not "%OS%" == "Windows_NT" goto win9xME_args
|
||||
|
||||
:win9xME_args
|
||||
@rem Slurp the command line arguments.
|
||||
set CMD_LINE_ARGS=
|
||||
set _SKIP=2
|
||||
|
||||
:win9xME_args_slurp
|
||||
if "x%~1" == "x" goto execute
|
||||
|
||||
set CMD_LINE_ARGS=%*
|
||||
"%COMSPEC%" /c exit 1
|
||||
|
||||
:execute
|
||||
@rem Setup the command line
|
||||
|
||||
set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
|
||||
|
||||
@rem Execute Gradle
|
||||
"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS%
|
||||
|
||||
:end
|
||||
@rem End local scope for the variables with windows NT shell
|
||||
if "%ERRORLEVEL%"=="0" goto mainEnd
|
||||
@rem Execute gradlew
|
||||
@rem endlocal doesn't take effect until after the line is parsed and variables are expanded
|
||||
@rem which allows us to clear the local environment before executing the java command
|
||||
endlocal & "%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %* & call :exitWithErrorLevel
|
||||
|
||||
:fail
|
||||
rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
|
||||
rem the _cmd.exe /c_ return code!
|
||||
if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
|
||||
exit /b 1
|
||||
|
||||
:mainEnd
|
||||
if "%OS%"=="Windows_NT" endlocal
|
||||
|
||||
:omega
|
||||
:exitWithErrorLevel
|
||||
@rem Use "%COMSPEC%" /c exit to allow operators to work properly in scripts
|
||||
"%COMSPEC%" /c exit %ERRORLEVEL%
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
After Width: | Height: | Size: 120 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 98 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 100 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 73 KiB |
@@ -1,20 +1,4 @@
|
||||
// Add any additional repositories for your dependencies here
|
||||
|
||||
repositories {
|
||||
maven {
|
||||
name 'GTNH Maven'
|
||||
url 'http://jenkins.usrv.eu:8081/nexus/content/groups/public/'
|
||||
allowInsecureProtocol
|
||||
}
|
||||
maven {
|
||||
name 'ic2'
|
||||
url 'https://maven.ic2.player.to/'
|
||||
metadataSources {
|
||||
mavenPom()
|
||||
artifact()
|
||||
}
|
||||
}
|
||||
maven {
|
||||
url 'https://jitpack.io'
|
||||
}
|
||||
}
|
||||
+19
-6
@@ -1,10 +1,23 @@
|
||||
|
||||
pluginManagement {
|
||||
repositories {
|
||||
maven {
|
||||
// RetroFuturaGradle
|
||||
name "GTNH Maven"
|
||||
url "https://nexus.gtnewhorizons.com/repository/public/"
|
||||
mavenContent {
|
||||
includeGroup("com.gtnewhorizons")
|
||||
includeGroupByRegex("com\\.gtnewhorizons\\..+")
|
||||
}
|
||||
}
|
||||
gradlePluginPortal()
|
||||
mavenCentral()
|
||||
mavenLocal()
|
||||
}
|
||||
}
|
||||
|
||||
plugins {
|
||||
id 'com.diffplug.blowdryerSetup' version '1.6.0'
|
||||
id 'com.gtnewhorizons.gtnhsettingsconvention' version '2.0.31'
|
||||
}
|
||||
|
||||
apply plugin: 'com.diffplug.blowdryerSetup'
|
||||
|
||||
blowdryerSetup {
|
||||
github('GTNewHorizons/ExampleMod1.7.10', 'tag', '0.1.5')
|
||||
//devLocal '.' // Use this when testing config updates locally
|
||||
}
|
||||
@@ -4,6 +4,34 @@
|
||||
|
||||
package com.kentington.thaumichorizons.client;
|
||||
|
||||
import java.awt.Color;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.client.Minecraft;
|
||||
import net.minecraft.client.model.ModelChicken;
|
||||
import net.minecraft.client.model.ModelCow;
|
||||
import net.minecraft.client.model.ModelHorse;
|
||||
import net.minecraft.client.model.ModelOcelot;
|
||||
import net.minecraft.client.model.ModelPig;
|
||||
import net.minecraft.client.model.ModelSlime;
|
||||
import net.minecraft.client.model.ModelWolf;
|
||||
import net.minecraft.client.multiplayer.WorldClient;
|
||||
import net.minecraft.client.particle.EntityFX;
|
||||
import net.minecraft.client.particle.EntityFlameFX;
|
||||
import net.minecraft.client.particle.EntitySpellParticleFX;
|
||||
import net.minecraft.client.resources.IReloadableResourceManager;
|
||||
import net.minecraft.client.resources.IResourceManager;
|
||||
import net.minecraft.entity.Entity;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraft.world.World;
|
||||
import net.minecraftforge.client.MinecraftForgeClient;
|
||||
import net.minecraftforge.common.MinecraftForge;
|
||||
import net.minecraftforge.event.world.WorldEvent;
|
||||
|
||||
import com.kentington.thaumichorizons.client.audio.VortexSound;
|
||||
import com.kentington.thaumichorizons.client.fx.FXSonic;
|
||||
import com.kentington.thaumichorizons.client.gui.GuiBloodInfuser;
|
||||
import com.kentington.thaumichorizons.client.gui.GuiCase;
|
||||
@@ -134,38 +162,12 @@ import com.kentington.thaumichorizons.common.tiles.TileVatSlave;
|
||||
import com.kentington.thaumichorizons.common.tiles.TileVisDynamo;
|
||||
import com.kentington.thaumichorizons.common.tiles.TileVortex;
|
||||
import com.kentington.thaumichorizons.common.tiles.TileVortexStabilizer;
|
||||
|
||||
import cpw.mods.fml.client.FMLClientHandler;
|
||||
import cpw.mods.fml.client.registry.ClientRegistry;
|
||||
import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler;
|
||||
import cpw.mods.fml.client.registry.RenderingRegistry;
|
||||
import cpw.mods.fml.common.FMLCommonHandler;
|
||||
import java.awt.Color;
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.client.Minecraft;
|
||||
import net.minecraft.client.model.ModelBase;
|
||||
import net.minecraft.client.model.ModelChicken;
|
||||
import net.minecraft.client.model.ModelCow;
|
||||
import net.minecraft.client.model.ModelHorse;
|
||||
import net.minecraft.client.model.ModelOcelot;
|
||||
import net.minecraft.client.model.ModelPig;
|
||||
import net.minecraft.client.model.ModelSlime;
|
||||
import net.minecraft.client.model.ModelWolf;
|
||||
import net.minecraft.client.multiplayer.WorldClient;
|
||||
import net.minecraft.client.particle.EntityFX;
|
||||
import net.minecraft.client.particle.EntityFlameFX;
|
||||
import net.minecraft.client.particle.EntitySpellParticleFX;
|
||||
import net.minecraft.client.renderer.entity.Render;
|
||||
import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer;
|
||||
import net.minecraft.client.resources.IReloadableResourceManager;
|
||||
import net.minecraft.client.resources.IResourceManager;
|
||||
import net.minecraft.client.resources.IResourceManagerReloadListener;
|
||||
import net.minecraft.entity.Entity;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraft.world.World;
|
||||
import net.minecraftforge.client.IItemRenderer;
|
||||
import net.minecraftforge.client.MinecraftForgeClient;
|
||||
import net.minecraftforge.common.MinecraftForge;
|
||||
import cpw.mods.fml.common.eventhandler.SubscribeEvent;
|
||||
import thaumcraft.api.wands.IWandTriggerManager;
|
||||
import thaumcraft.client.fx.ParticleEngine;
|
||||
import thaumcraft.client.fx.particles.FXBurst;
|
||||
@@ -175,6 +177,7 @@ import thaumcraft.client.renderers.item.ItemWandRenderer;
|
||||
import thaumcraft.common.Thaumcraft;
|
||||
|
||||
public class ClientProxy extends CommonProxy {
|
||||
|
||||
public IWandTriggerManager wandManager;
|
||||
|
||||
public ClientProxy() {
|
||||
@@ -183,157 +186,106 @@ public class ClientProxy extends CommonProxy {
|
||||
|
||||
@Override
|
||||
public void registerHandlers() {
|
||||
MinecraftForge.EVENT_BUS.register((Object) ThaumicHorizons.instance.renderEventHandler);
|
||||
MinecraftForge.EVENT_BUS.register(this);
|
||||
MinecraftForge.EVENT_BUS.register(ThaumicHorizons.instance.renderEventHandler);
|
||||
final IResourceManager resourceManager = Minecraft.getMinecraft().getResourceManager();
|
||||
if (resourceManager instanceof IReloadableResourceManager) {
|
||||
((IReloadableResourceManager) resourceManager).registerReloadListener(new IResourceManagerReloadListener() {
|
||||
@Override
|
||||
public void onResourceManagerReload(IResourceManager ignored) {
|
||||
FXSonic.model = null;
|
||||
}
|
||||
});
|
||||
((IReloadableResourceManager) resourceManager).registerReloadListener(ignored -> FXSonic.model = null);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void registerKeyBindings() {
|
||||
FMLCommonHandler.instance().bus().register((Object) new THKeyHandler());
|
||||
FMLCommonHandler.instance().bus().register(new THKeyHandler());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void registerRenderers() {
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(
|
||||
(Class) TileNodeMonitor.class, (TileEntitySpecialRenderer) new TileNodeMonitorRender());
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(
|
||||
(Class) TileSyntheticNode.class, (TileEntitySpecialRenderer) new TileEtherealShardRender());
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(
|
||||
(Class) TileVisDynamo.class, (TileEntitySpecialRenderer) new TileVisDynamoRender());
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(
|
||||
(Class) TileEssentiaDynamo.class, (TileEntitySpecialRenderer) new TileEssentiaDynamoRender());
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(
|
||||
(Class) TileSoulExtractor.class, (TileEntitySpecialRenderer) new TileSoulSieveRender());
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(
|
||||
(Class) TileInspiratron.class, (TileEntitySpecialRenderer) new TileInspiratronRender());
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(
|
||||
(Class) TileSoulforge.class, (TileEntitySpecialRenderer) new TileSoulforgeRender());
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(
|
||||
(Class) TileVatSlave.class, (TileEntitySpecialRenderer) new TileVatSlaveRender());
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(
|
||||
(Class) TileVatMatrix.class, (TileEntitySpecialRenderer) new TileVatMatrixRender(0));
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(
|
||||
(Class) TileBloodInfuser.class, (TileEntitySpecialRenderer) new TileBloodInfuserRender());
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(
|
||||
(Class) TileSoulBeacon.class, (TileEntitySpecialRenderer) new TileSoulBeaconRender());
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(
|
||||
(Class) TileTransductionAmplifier.class,
|
||||
(TileEntitySpecialRenderer) new TileTransductionAmplifierRender());
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(
|
||||
(Class) TileRecombinator.class, (TileEntitySpecialRenderer) new TileRecombinatorRender());
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(
|
||||
(Class) TileVortexStabilizer.class, (TileEntitySpecialRenderer) new TileVortexStabilizerRender());
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(
|
||||
(Class) TileVortex.class, (TileEntitySpecialRenderer) new TileVortexRender());
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(
|
||||
(Class) TileSpike.class, (TileEntitySpecialRenderer) new TileSpikeRender());
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(
|
||||
(Class) TileCloud.class, (TileEntitySpecialRenderer) new TileCloudRender());
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(
|
||||
(Class) TileSlot.class, (TileEntitySpecialRenderer) new TileSlotRender());
|
||||
RenderingRegistry.registerEntityRenderingHandler(
|
||||
(Class) EntityAlchemitePrimed.class, (Render) new RenderAlchemitePrimed());
|
||||
RenderingRegistry.registerEntityRenderingHandler((Class) EntitySyringe.class, (Render) new RenderSyringe());
|
||||
RenderingRegistry.registerEntityRenderingHandler(
|
||||
(Class) EntityBlastPhial.class, (Render) new BlastPhialRender());
|
||||
RenderingRegistry.registerEntityRenderingHandler(
|
||||
(Class) EntityChocolateCow.class, (Render) new RenderChocolateCow((ModelBase) new ModelCow(), 0.7f));
|
||||
RenderingRegistry.registerEntityRenderingHandler((Class) EntityOrePig.class, (Render)
|
||||
new RenderOreBoar((ModelBase) new ModelPig(), (ModelBase) new ModelPig(0.5f), 0.7f));
|
||||
RenderingRegistry.registerEntityRenderingHandler((Class) EntityGuardianPanther.class, (Render)
|
||||
new RenderGuardianPanther((ModelBase) new ModelOcelot(), 1.0f));
|
||||
RenderingRegistry.registerEntityRenderingHandler(
|
||||
(Class) EntityFamiliar.class, (Render) new RenderFamiliar(new ModelFamiliar(), 0.5f));
|
||||
RenderingRegistry.registerEntityRenderingHandler(
|
||||
(Class) EntityGravekeeper.class, (Render) new RenderGravekeeper((ModelBase) new ModelOcelot(), 0.5f));
|
||||
RenderingRegistry.registerEntityRenderingHandler(
|
||||
(Class) EntityGoldChicken.class, (Render) new RenderGoldChicken((ModelBase) new ModelChicken(), 0.5f));
|
||||
RenderingRegistry.registerEntityRenderingHandler((Class) EntityScholarChicken.class, (Render)
|
||||
new RenderScholarChicken((ModelBase) new ModelChicken(), 0.5f));
|
||||
RenderingRegistry.registerEntityRenderingHandler((Class) EntityTaintPig.class, (Render)
|
||||
new RenderTaintfeeder((ModelBase) new ModelPig(), (ModelBase) new ModelPig(0.5f), 0.5f));
|
||||
RenderingRegistry.registerEntityRenderingHandler((Class) EntityNetherHound.class, (Render)
|
||||
new RenderNetherHound((ModelBase) new ModelWolf(), (ModelBase) new ModelWolf(), 0.5f));
|
||||
RenderingRegistry.registerEntityRenderingHandler((Class) EntitySeawolf.class, (Render)
|
||||
new RenderSeawolf((ModelBase) new ModelWolf(), (ModelBase) new ModelWolf(), 0.5f));
|
||||
RenderingRegistry.registerEntityRenderingHandler((Class) EntityLunarWolf.class, (Render)
|
||||
new RenderLunarWolf((ModelBase) new ModelWolf(), (ModelBase) new ModelWolf(), 0.5f));
|
||||
RenderingRegistry.registerEntityRenderingHandler(
|
||||
(Class) EntityGolemTH.class, (Render) new RenderGolemTH((ModelBase) new ModelGolemTH(false)));
|
||||
RenderingRegistry.registerEntityRenderingHandler(
|
||||
(Class) EntityEndersteed.class, (Render) new RenderEndersteed((ModelBase) new ModelHorse(), 0.75f));
|
||||
RenderingRegistry.registerEntityRenderingHandler(
|
||||
(Class) EntityNightmare.class, (Render) new RenderNightmare((ModelBase) new ModelHorse(), 0.75f));
|
||||
RenderingRegistry.registerEntityRenderingHandler(
|
||||
(Class) EntityBoatGreatwood.class, (Render) new RenderBoatGreatwood());
|
||||
RenderingRegistry.registerEntityRenderingHandler(
|
||||
(Class) EntityBoatThaumium.class, (Render) new RenderBoatThaumium());
|
||||
RenderingRegistry.registerEntityRenderingHandler((Class) EntityMeatSlime.class, (Render)
|
||||
new RenderMeatSlime((ModelBase) new ModelSlime(16), (ModelBase) new ModelSlime(0), 0.25f));
|
||||
RenderingRegistry.registerEntityRenderingHandler((Class) EntityMercurialSlime.class, (Render)
|
||||
new RenderMercurialSlime((ModelBase) new ModelSlime(16), (ModelBase) new ModelSlime(0), 0.25f));
|
||||
RenderingRegistry.registerEntityRenderingHandler((Class) EntityVoltSlime.class, (Render)
|
||||
new RenderVoltSlime((ModelBase) new ModelSlime(16), (ModelBase) new ModelSlime(0), 0.25f));
|
||||
RenderingRegistry.registerEntityRenderingHandler((Class) EntityMedSlime.class, (Render)
|
||||
new RenderMedSlime((ModelBase) new ModelSlime(16), (ModelBase) new ModelSlime(0), 0.25f));
|
||||
RenderingRegistry.registerEntityRenderingHandler((Class) EntitySheeder.class, (Render) new RenderSheeder());
|
||||
RenderingRegistry.registerEntityRenderingHandler((Class) EntitySoul.class, (Render) new RenderSoul());
|
||||
RenderingRegistry.registerEntityRenderingHandler(
|
||||
(Class) EntityLightningBoltFinite.class, (Render) new RenderLightningBoltFinite());
|
||||
MinecraftForgeClient.registerItemRenderer(
|
||||
ThaumicHorizons.itemSyringeBloodSample, (IItemRenderer) new ItemSyringeRender());
|
||||
MinecraftForgeClient.registerItemRenderer(
|
||||
ThaumicHorizons.itemSyringeHuman, (IItemRenderer) new ItemSyringeRender());
|
||||
MinecraftForgeClient.registerItemRenderer(
|
||||
ThaumicHorizons.itemSyringeEmpty, (IItemRenderer) new ItemSyringeRender());
|
||||
MinecraftForgeClient.registerItemRenderer(
|
||||
ThaumicHorizons.itemSyringeInjection, (IItemRenderer) new ItemSyringeRender());
|
||||
MinecraftForgeClient.registerItemRenderer(
|
||||
ThaumicHorizons.itemCorpseEffigy, (IItemRenderer) new ItemCorpseEffigyRender());
|
||||
MinecraftForgeClient.registerItemRenderer(
|
||||
ThaumicHorizons.itemInjector, (IItemRenderer) new ItemInjectorRender());
|
||||
MinecraftForgeClient.registerItemRenderer(
|
||||
ThaumicHorizons.itemWandCastingDisposable, (IItemRenderer) new ItemWandRenderer());
|
||||
// spotless:off
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(TileNodeMonitor.class, new TileNodeMonitorRender());
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(TileSyntheticNode.class, new TileEtherealShardRender());
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(TileVisDynamo.class, new TileVisDynamoRender());
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(TileEssentiaDynamo.class, new TileEssentiaDynamoRender());
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(TileSoulExtractor.class, new TileSoulSieveRender());
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(TileInspiratron.class, new TileInspiratronRender());
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(TileSoulforge.class, new TileSoulforgeRender());
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(TileVatSlave.class, new TileVatSlaveRender());
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(TileVatMatrix.class, new TileVatMatrixRender(0));
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(TileBloodInfuser.class, new TileBloodInfuserRender());
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(TileSoulBeacon.class, new TileSoulBeaconRender());
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(TileTransductionAmplifier.class, new TileTransductionAmplifierRender());
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(TileRecombinator.class, new TileRecombinatorRender());
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(TileVortexStabilizer.class, new TileVortexStabilizerRender());
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(TileVortex.class, new TileVortexRender());
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(TileSpike.class, new TileSpikeRender());
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(TileCloud.class, new TileCloudRender());
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(TileSlot.class, new TileSlotRender());
|
||||
RenderingRegistry.registerEntityRenderingHandler(EntityAlchemitePrimed.class, new RenderAlchemitePrimed());
|
||||
RenderingRegistry.registerEntityRenderingHandler(EntitySyringe.class, new RenderSyringe());
|
||||
RenderingRegistry.registerEntityRenderingHandler(EntityBlastPhial.class, new BlastPhialRender());
|
||||
RenderingRegistry.registerEntityRenderingHandler(EntityChocolateCow.class, new RenderChocolateCow(new ModelCow(), 0.7f));
|
||||
RenderingRegistry.registerEntityRenderingHandler(EntityOrePig.class, new RenderOreBoar(new ModelPig(), new ModelPig(0.5f), 0.7f));
|
||||
RenderingRegistry.registerEntityRenderingHandler(EntityGuardianPanther.class, new RenderGuardianPanther(new ModelOcelot(), 1.0f));
|
||||
RenderingRegistry.registerEntityRenderingHandler(EntityFamiliar.class, new RenderFamiliar(new ModelFamiliar(), 0.5f));
|
||||
RenderingRegistry.registerEntityRenderingHandler(EntityGravekeeper.class, new RenderGravekeeper(new ModelOcelot(), 0.5f));
|
||||
RenderingRegistry.registerEntityRenderingHandler(EntityGoldChicken.class, new RenderGoldChicken(new ModelChicken(), 0.5f));
|
||||
RenderingRegistry.registerEntityRenderingHandler(EntityScholarChicken.class, new RenderScholarChicken(new ModelChicken(), 0.5f));
|
||||
RenderingRegistry.registerEntityRenderingHandler(EntityTaintPig.class, new RenderTaintfeeder(new ModelPig(), new ModelPig(0.5f), 0.5f));
|
||||
RenderingRegistry.registerEntityRenderingHandler(EntityNetherHound.class, new RenderNetherHound(new ModelWolf(), new ModelWolf(), 0.5f));
|
||||
RenderingRegistry.registerEntityRenderingHandler(EntitySeawolf.class, new RenderSeawolf(new ModelWolf(), new ModelWolf(), 0.5f));
|
||||
RenderingRegistry.registerEntityRenderingHandler(EntityLunarWolf.class, new RenderLunarWolf(new ModelWolf(), new ModelWolf(), 0.5f));
|
||||
RenderingRegistry.registerEntityRenderingHandler(EntityGolemTH.class, new RenderGolemTH(new ModelGolemTH(false)));
|
||||
RenderingRegistry.registerEntityRenderingHandler(EntityEndersteed.class, new RenderEndersteed(new ModelHorse(), 0.75f));
|
||||
RenderingRegistry.registerEntityRenderingHandler(EntityNightmare.class, new RenderNightmare(new ModelHorse(), 0.75f));
|
||||
RenderingRegistry.registerEntityRenderingHandler(EntityBoatGreatwood.class, new RenderBoatGreatwood());
|
||||
RenderingRegistry.registerEntityRenderingHandler(EntityBoatThaumium.class, new RenderBoatThaumium());
|
||||
RenderingRegistry.registerEntityRenderingHandler(EntityMeatSlime.class, new RenderMeatSlime(new ModelSlime(16), new ModelSlime(0), 0.25f));
|
||||
RenderingRegistry.registerEntityRenderingHandler(EntityMercurialSlime.class, new RenderMercurialSlime(new ModelSlime(16), new ModelSlime(0), 0.25f));
|
||||
RenderingRegistry.registerEntityRenderingHandler(EntityVoltSlime.class, new RenderVoltSlime(new ModelSlime(16), new ModelSlime(0), 0.25f));
|
||||
RenderingRegistry.registerEntityRenderingHandler(EntityMedSlime.class, new RenderMedSlime(new ModelSlime(16), new ModelSlime(0), 0.25f));
|
||||
RenderingRegistry.registerEntityRenderingHandler(EntitySheeder.class, new RenderSheeder());
|
||||
RenderingRegistry.registerEntityRenderingHandler(EntitySoul.class, new RenderSoul());
|
||||
RenderingRegistry.registerEntityRenderingHandler(EntityLightningBoltFinite.class, new RenderLightningBoltFinite());
|
||||
MinecraftForgeClient.registerItemRenderer(ThaumicHorizons.itemSyringeBloodSample, new ItemSyringeRender());
|
||||
MinecraftForgeClient.registerItemRenderer(ThaumicHorizons.itemSyringeHuman, new ItemSyringeRender());
|
||||
MinecraftForgeClient.registerItemRenderer(ThaumicHorizons.itemSyringeEmpty, new ItemSyringeRender());
|
||||
MinecraftForgeClient.registerItemRenderer(ThaumicHorizons.itemSyringeInjection, new ItemSyringeRender());
|
||||
MinecraftForgeClient.registerItemRenderer(ThaumicHorizons.itemCorpseEffigy, new ItemCorpseEffigyRender());
|
||||
MinecraftForgeClient.registerItemRenderer(ThaumicHorizons.itemInjector, new ItemInjectorRender());
|
||||
MinecraftForgeClient.registerItemRenderer(ThaumicHorizons.itemWandCastingDisposable, new ItemWandRenderer());
|
||||
// spotless:on
|
||||
}
|
||||
|
||||
@Override
|
||||
public Object getClientGuiElement(
|
||||
final int ID, final EntityPlayer player, final World world, final int x, final int y, final int z) {
|
||||
public Object getClientGuiElement(final int ID, final EntityPlayer player, final World world, final int x,
|
||||
final int y, final int z) {
|
||||
if (world instanceof WorldClient) {
|
||||
switch (ID) {
|
||||
case 1: {
|
||||
case 1 -> {
|
||||
return new GuiVisDynamo(player, (TileVisDynamo) world.getTileEntity(x, y, z));
|
||||
}
|
||||
case 2: {
|
||||
case 2 -> {
|
||||
return new GuiSoulExtractor(player.inventory, (TileSoulExtractor) world.getTileEntity(x, y, z));
|
||||
}
|
||||
case 3: {
|
||||
case 3 -> {
|
||||
return new GuiInspiratron(player.inventory, (TileInspiratron) world.getTileEntity(x, y, z));
|
||||
}
|
||||
case 4: {
|
||||
case 4 -> {
|
||||
return new GuiSoulforge(player, (TileSoulforge) world.getTileEntity(x, y, z));
|
||||
}
|
||||
case 5: {
|
||||
case 5 -> {
|
||||
return new GuiBloodInfuser(player, (TileBloodInfuser) world.getTileEntity(x, y, z));
|
||||
}
|
||||
case 6: {
|
||||
case 6 -> {
|
||||
return new GuiInjector(player);
|
||||
}
|
||||
case 7: {
|
||||
case 7 -> {
|
||||
return new GuiVat(player, (TileVat) world.getTileEntity(x, y, z));
|
||||
}
|
||||
case 8: {
|
||||
case 8 -> {
|
||||
return new GuiCase(player.inventory, world, x, y, z);
|
||||
}
|
||||
case 9: {
|
||||
case 9 -> {
|
||||
return new GuiFingers(player.inventory);
|
||||
}
|
||||
}
|
||||
@@ -344,72 +296,69 @@ public class ClientProxy extends CommonProxy {
|
||||
@Override
|
||||
public void registerDisplayInformation() {
|
||||
ThaumicHorizons.blockJarRI = RenderingRegistry.getNextAvailableRenderId();
|
||||
MinecraftForgeClient.registerItemRenderer(
|
||||
Item.getItemFromBlock(ThaumicHorizons.blockJar), (IItemRenderer) new ItemJarTHRenderer());
|
||||
RenderingRegistry.registerBlockHandler((ISimpleBlockRenderingHandler) new BlockJarTHRenderer());
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(
|
||||
(Class) TileSoulJar.class, (TileEntitySpecialRenderer) new TileJarTHRenderer());
|
||||
MinecraftForgeClient
|
||||
.registerItemRenderer(Item.getItemFromBlock(ThaumicHorizons.blockJar), new ItemJarTHRenderer());
|
||||
RenderingRegistry.registerBlockHandler(new BlockJarTHRenderer());
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(TileSoulJar.class, new TileJarTHRenderer());
|
||||
ThaumicHorizons.blockSyntheticNodeRI = RenderingRegistry.getNextAvailableRenderId();
|
||||
RenderingRegistry.registerBlockHandler((ISimpleBlockRenderingHandler) new BlockSyntheticNodeRender());
|
||||
RenderingRegistry.registerBlockHandler(new BlockSyntheticNodeRender());
|
||||
ThaumicHorizons.blockNodeMonRI = RenderingRegistry.getNextAvailableRenderId();
|
||||
RenderingRegistry.registerBlockHandler((ISimpleBlockRenderingHandler) new BlockNodeMonitorRender());
|
||||
RenderingRegistry.registerBlockHandler(new BlockNodeMonitorRender());
|
||||
ThaumicHorizons.blockVisDynamoRI = RenderingRegistry.getNextAvailableRenderId();
|
||||
RenderingRegistry.registerBlockHandler((ISimpleBlockRenderingHandler) new BlockVisDynamoRender());
|
||||
RenderingRegistry.registerBlockHandler(new BlockVisDynamoRender());
|
||||
ThaumicHorizons.blockEssentiaDynamoRI = RenderingRegistry.getNextAvailableRenderId();
|
||||
RenderingRegistry.registerBlockHandler((ISimpleBlockRenderingHandler) new BlockEssentiaDynamoRender());
|
||||
RenderingRegistry.registerBlockHandler(new BlockEssentiaDynamoRender());
|
||||
ThaumicHorizons.blockSoulSieveRI = RenderingRegistry.getNextAvailableRenderId();
|
||||
RenderingRegistry.registerBlockHandler((ISimpleBlockRenderingHandler) new BlockSoulSieveRender());
|
||||
RenderingRegistry.registerBlockHandler(new BlockSoulSieveRender());
|
||||
ThaumicHorizons.blockInspiratronRI = RenderingRegistry.getNextAvailableRenderId();
|
||||
RenderingRegistry.registerBlockHandler((ISimpleBlockRenderingHandler) new BlockInspiratronRender());
|
||||
RenderingRegistry.registerBlockHandler(new BlockInspiratronRender());
|
||||
ThaumicHorizons.blockSoulforgeRI = RenderingRegistry.getNextAvailableRenderId();
|
||||
RenderingRegistry.registerBlockHandler((ISimpleBlockRenderingHandler) new BlockSoulforgeRender());
|
||||
RenderingRegistry.registerBlockHandler(new BlockSoulforgeRender());
|
||||
ThaumicHorizons.blockVatRI = RenderingRegistry.getNextAvailableRenderId();
|
||||
RenderingRegistry.registerBlockHandler((ISimpleBlockRenderingHandler) new BlockVatRender());
|
||||
RenderingRegistry.registerBlockHandler(new BlockVatRender());
|
||||
ThaumicHorizons.blockVatSolidRI = RenderingRegistry.getNextAvailableRenderId();
|
||||
RenderingRegistry.registerBlockHandler((ISimpleBlockRenderingHandler) new BlockVatSolidRender());
|
||||
RenderingRegistry.registerBlockHandler(new BlockVatSolidRender());
|
||||
ThaumicHorizons.blockVatInteriorRI = RenderingRegistry.getNextAvailableRenderId();
|
||||
RenderingRegistry.registerBlockHandler((ISimpleBlockRenderingHandler) new BlockVatInteriorRender());
|
||||
RenderingRegistry.registerBlockHandler(new BlockVatInteriorRender());
|
||||
ThaumicHorizons.blockVatMatrixRI = RenderingRegistry.getNextAvailableRenderId();
|
||||
RenderingRegistry.registerBlockHandler((ISimpleBlockRenderingHandler) new BlockVatMatrixRender());
|
||||
RenderingRegistry.registerBlockHandler(new BlockVatMatrixRender());
|
||||
ThaumicHorizons.blockBloodInfuserRI = RenderingRegistry.getNextAvailableRenderId();
|
||||
RenderingRegistry.registerBlockHandler((ISimpleBlockRenderingHandler) new BlockBloodInfuserRender());
|
||||
RenderingRegistry.registerBlockHandler(new BlockBloodInfuserRender());
|
||||
ThaumicHorizons.blockSoulBeaconRI = RenderingRegistry.getNextAvailableRenderId();
|
||||
RenderingRegistry.registerBlockHandler((ISimpleBlockRenderingHandler) new BlockSoulBeaconRender());
|
||||
RenderingRegistry.registerBlockHandler(new BlockSoulBeaconRender());
|
||||
ThaumicHorizons.blockTransducerRI = RenderingRegistry.getNextAvailableRenderId();
|
||||
RenderingRegistry.registerBlockHandler((ISimpleBlockRenderingHandler) new BlockTransductionAmplifierRender());
|
||||
RenderingRegistry.registerBlockHandler(new BlockTransductionAmplifierRender());
|
||||
ThaumicHorizons.blockRecombinatorRI = RenderingRegistry.getNextAvailableRenderId();
|
||||
RenderingRegistry.registerBlockHandler((ISimpleBlockRenderingHandler) new BlockRecombinatorRender());
|
||||
RenderingRegistry.registerBlockHandler(new BlockRecombinatorRender());
|
||||
ThaumicHorizons.blockVortexStabilizerRI = RenderingRegistry.getNextAvailableRenderId();
|
||||
RenderingRegistry.registerBlockHandler((ISimpleBlockRenderingHandler) new BlockVortexStabilizerRender());
|
||||
RenderingRegistry.registerBlockHandler(new BlockVortexStabilizerRender());
|
||||
ThaumicHorizons.blockSpikeRI = RenderingRegistry.getNextAvailableRenderId();
|
||||
RenderingRegistry.registerBlockHandler((ISimpleBlockRenderingHandler) new BlockSpikeRenderer());
|
||||
RenderingRegistry.registerBlockHandler(new BlockSpikeRenderer());
|
||||
ThaumicHorizons.blockSlotRI = RenderingRegistry.getNextAvailableRenderId();
|
||||
RenderingRegistry.registerBlockHandler((ISimpleBlockRenderingHandler) new BlockSlotRender());
|
||||
RenderingRegistry.registerBlockHandler(new BlockSlotRender());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void disintegrateFX(
|
||||
final double blockX,
|
||||
final double blockY,
|
||||
final double blockZ,
|
||||
final EntityPlayer p,
|
||||
final int howMany,
|
||||
final boolean enlarged) {
|
||||
public void disintegrateFX(final double blockX, final double blockY, final double blockZ, final EntityPlayer p,
|
||||
final int howMany, final boolean enlarged) {
|
||||
if (enlarged) {
|
||||
for (int x = -1; x < 2; ++x) {
|
||||
for (int y = -1; y < 2; ++y) {
|
||||
for (int z = -1; z < 2; ++z) {
|
||||
for (int i = 0; i < howMany; ++i) {
|
||||
final FXSparkle fx =
|
||||
new FXSparkle(p.worldObj, blockX + 0.5, blockY + 0.5, blockZ + 0.5, 1.0f, 0, 6);
|
||||
final FXSparkle fx = new FXSparkle(
|
||||
p.worldObj,
|
||||
blockX + 0.5,
|
||||
blockY + 0.5,
|
||||
blockZ + 0.5,
|
||||
1.0f,
|
||||
0,
|
||||
6);
|
||||
fx.motionX = (p.worldObj.rand.nextDouble() - 0.5) / 4.0;
|
||||
fx.motionY = (p.worldObj.rand.nextDouble() - 0.5) / 4.0;
|
||||
fx.motionZ = (p.worldObj.rand.nextDouble() - 0.5) / 4.0;
|
||||
fx.noClip = true;
|
||||
FMLClientHandler.instance()
|
||||
.getClient()
|
||||
.effectRenderer
|
||||
.addEffect((EntityFX) fx);
|
||||
FMLClientHandler.instance().getClient().effectRenderer.addEffect(fx);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -421,18 +370,13 @@ public class ClientProxy extends CommonProxy {
|
||||
fx.motionY = (p.worldObj.rand.nextDouble() - 0.5) / 4.0;
|
||||
fx.motionZ = (p.worldObj.rand.nextDouble() - 0.5) / 4.0;
|
||||
fx.noClip = true;
|
||||
FMLClientHandler.instance().getClient().effectRenderer.addEffect((EntityFX) fx);
|
||||
FMLClientHandler.instance().getClient().effectRenderer.addEffect(fx);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void smeltFX(
|
||||
final double blockX,
|
||||
final double blockY,
|
||||
final double blockZ,
|
||||
final World w,
|
||||
final int howMany,
|
||||
public void smeltFX(final double blockX, final double blockY, final double blockZ, final World w, final int howMany,
|
||||
final boolean enlarged) {
|
||||
if (enlarged) {
|
||||
for (int x = -1; x < 2; ++x) {
|
||||
@@ -448,10 +392,7 @@ public class ClientProxy extends CommonProxy {
|
||||
(w.rand.nextDouble() - 0.5) * 0.25,
|
||||
(w.rand.nextDouble() - 0.5) * 0.25);
|
||||
fx.noClip = true;
|
||||
FMLClientHandler.instance()
|
||||
.getClient()
|
||||
.effectRenderer
|
||||
.addEffect((EntityFX) fx);
|
||||
FMLClientHandler.instance().getClient().effectRenderer.addEffect(fx);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -467,7 +408,7 @@ public class ClientProxy extends CommonProxy {
|
||||
(w.rand.nextDouble() - 0.5) * 0.25,
|
||||
(w.rand.nextDouble() - 0.5) * 0.25);
|
||||
fx.noClip = true;
|
||||
FMLClientHandler.instance().getClient().effectRenderer.addEffect((EntityFX) fx);
|
||||
FMLClientHandler.instance().getClient().effectRenderer.addEffect(fx);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -484,22 +425,17 @@ public class ClientProxy extends CommonProxy {
|
||||
world.rand.nextDouble() * 0.25,
|
||||
0.0);
|
||||
fx.noClip = true;
|
||||
FMLClientHandler.instance().getClient().effectRenderer.addEffect((EntityFX) fx);
|
||||
FMLClientHandler.instance().getClient().effectRenderer.addEffect(fx);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void containmentFX(
|
||||
final double blockX,
|
||||
final double blockY,
|
||||
final double blockZ,
|
||||
final EntityPlayer p,
|
||||
final Entity ent,
|
||||
final int times) {
|
||||
public void containmentFX(final double blockX, final double blockY, final double blockZ, final EntityPlayer p,
|
||||
final Entity ent, final int times) {
|
||||
final double xSize = ent.boundingBox.maxX - ent.boundingBox.minX;
|
||||
final double ySize = ent.boundingBox.maxY - ent.boundingBox.minY;
|
||||
final double zSize = ent.boundingBox.maxZ - ent.boundingBox.minZ;
|
||||
final double radius = (xSize > ySize) ? ((xSize > zSize) ? xSize : zSize) : ((ySize > zSize) ? ySize : zSize);
|
||||
final double radius = (xSize > ySize) ? (Math.max(xSize, zSize)) : (Math.max(ySize, zSize));
|
||||
final double xCenter = (ent.boundingBox.maxX + ent.boundingBox.minX) / 2.0;
|
||||
final double yCenter = (ent.boundingBox.maxY + ent.boundingBox.minY) / 2.0;
|
||||
final double zCenter = (ent.boundingBox.maxZ + ent.boundingBox.minZ) / 2.0;
|
||||
@@ -532,18 +468,18 @@ public class ClientProxy extends CommonProxy {
|
||||
@Override
|
||||
public void disintegrateExplodeFX(final World worldObj, final double posX, final double posY, final double posZ) {
|
||||
final FXBurst ef = new FXBurst(worldObj, posX, posY, posZ, 1.0f);
|
||||
FMLClientHandler.instance().getClient().effectRenderer.addEffect((EntityFX) ef);
|
||||
FMLClientHandler.instance().getClient().effectRenderer.addEffect(ef);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void illuminationFX(
|
||||
final World world, final int xCoord, final int yCoord, final int zCoord, final int md, final Color col) {
|
||||
public void illuminationFX(final World world, final int xCoord, final int yCoord, final int zCoord, final int md,
|
||||
final Color col) {
|
||||
if (world.rand.nextInt(9 - Thaumcraft.proxy.particleCount(2)) == 0) {
|
||||
final FXWisp ef = new FXWisp(
|
||||
world,
|
||||
(double) (xCoord + 0.55f),
|
||||
(double) (yCoord + 0.5f),
|
||||
(double) (zCoord + 0.55f),
|
||||
xCoord + 0.55f,
|
||||
yCoord + 0.5f,
|
||||
zCoord + 0.55f,
|
||||
0.5f,
|
||||
col.getRed() / 255.0f + 0.01f,
|
||||
col.getGreen() / 255.0f,
|
||||
@@ -553,7 +489,7 @@ public class ClientProxy extends CommonProxy {
|
||||
if (md == 0) {
|
||||
ef.blendmode = 0;
|
||||
}
|
||||
ParticleEngine.instance.addEffect(world, (EntityFX) ef);
|
||||
ParticleEngine.instance.addEffect(world, ef);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -565,7 +501,7 @@ public class ClientProxy extends CommonProxy {
|
||||
@Override
|
||||
public void alchemiteFX(final World worldObj, final double x, final double y, final double z) {
|
||||
final FXBurst ef = new FXBurst(worldObj, x, y, z, 10.0f);
|
||||
FMLClientHandler.instance().getClient().effectRenderer.addEffect((EntityFX) ef);
|
||||
FMLClientHandler.instance().getClient().effectRenderer.addEffect(ef);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -579,8 +515,8 @@ public class ClientProxy extends CommonProxy {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void lightningBolt(
|
||||
final World worldObj, final double x, final double y, final double z, final int boltLength) {
|
||||
public void lightningBolt(final World worldObj, final double x, final double y, final double z,
|
||||
final int boltLength) {
|
||||
Thaumcraft.proxy.arcLightning(
|
||||
worldObj,
|
||||
x + worldObj.rand.nextFloat() - 0.5,
|
||||
@@ -594,4 +530,62 @@ public class ClientProxy extends CommonProxy {
|
||||
1.0f,
|
||||
0.1f);
|
||||
}
|
||||
|
||||
private final Map<TileCoord, VortexSound> activeVortexSounds = new HashMap<>();
|
||||
|
||||
@SubscribeEvent
|
||||
public void onWorldUnload(WorldEvent.Unload event) {
|
||||
if (event.world.isRemote) {
|
||||
activeVortexSounds.clear();
|
||||
ThaumicHorizons.instance.renderEventHandler.thingsThatSparkle.clear();
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void playVortexSound(TileVortex tile) {
|
||||
if (tile == null || tile.isInvalid() || tile.getWorldObj() == null) return;
|
||||
|
||||
TileCoord pos = new TileCoord(tile.xCoord, tile.yCoord, tile.zCoord);
|
||||
if (activeVortexSounds.containsKey(pos)) return;
|
||||
|
||||
VortexSound sound = new VortexSound(tile);
|
||||
Minecraft.getMinecraft().getSoundHandler().playSound(sound);
|
||||
activeVortexSounds.put(pos, sound);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void stopVortexSound(TileVortex tile) {
|
||||
if (tile == null) return;
|
||||
|
||||
TileCoord pos = new TileCoord(tile.xCoord, tile.yCoord, tile.zCoord);
|
||||
VortexSound sound = activeVortexSounds.remove(pos);
|
||||
if (sound != null) {
|
||||
sound.markDone();
|
||||
}
|
||||
}
|
||||
|
||||
// Inner class to replace BlockPos for 1.7.10
|
||||
private static class TileCoord {
|
||||
|
||||
final int x, y, z;
|
||||
|
||||
TileCoord(int x, int y, int z) {
|
||||
this.x = x;
|
||||
this.y = y;
|
||||
this.z = z;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean equals(Object o) {
|
||||
if (!(o instanceof TileCoord)) return false;
|
||||
TileCoord other = (TileCoord) o;
|
||||
return this.x == other.x && this.y == other.y && this.z == other.z;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int hashCode() {
|
||||
return x * 31 * 31 + y * 31 + z;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,48 @@
|
||||
package com.kentington.thaumichorizons.client.audio;
|
||||
|
||||
import net.minecraft.client.Minecraft;
|
||||
import net.minecraft.client.audio.MovingSound;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
|
||||
public class VortexSound extends MovingSound {
|
||||
|
||||
private final TileEntity tile;
|
||||
|
||||
public VortexSound(TileEntity tile) {
|
||||
super(new ResourceLocation("thaumichorizons:vortex"));
|
||||
this.tile = tile;
|
||||
this.repeat = true;
|
||||
this.field_147665_h = 0;
|
||||
this.volume = 1.0F;
|
||||
}
|
||||
|
||||
// Let me know if update needs to be cached or if that's a good idea or not for performance.
|
||||
|
||||
@Override
|
||||
public void update() {
|
||||
if (tile == null || tile.isInvalid() || tile.getWorldObj() == null) {
|
||||
this.donePlaying = true;
|
||||
return;
|
||||
}
|
||||
|
||||
// follow tile
|
||||
this.xPosF = tile.xCoord + 0.5F;
|
||||
this.yPosF = tile.yCoord + 0.5F;
|
||||
this.zPosF = tile.zCoord + 0.5F;
|
||||
|
||||
// distance-based volume
|
||||
EntityPlayer p = Minecraft.getMinecraft().thePlayer;
|
||||
|
||||
if (p != null) {
|
||||
double dist = p.getDistance(this.xPosF, this.yPosF, this.zPosF);
|
||||
this.volume = Math.max(0.0F, 1.0F / (1.0F + (float) (dist / 8.0F)));
|
||||
}
|
||||
}
|
||||
|
||||
public void markDone() {
|
||||
this.donePlaying = true;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -4,14 +4,18 @@
|
||||
|
||||
package com.kentington.thaumichorizons.client.fx;
|
||||
|
||||
import net.minecraft.client.Minecraft;
|
||||
import net.minecraft.client.particle.EntityFX;
|
||||
import net.minecraft.client.renderer.Tessellator;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
import org.lwjgl.opengl.GL11;
|
||||
|
||||
import thaumcraft.client.lib.UtilsFX;
|
||||
|
||||
public class FXContainment extends EntityFX {
|
||||
|
||||
public static final ResourceLocation portaltex;
|
||||
|
||||
public FXContainment(final World par1World, final double par2, final double par4, final double par6) {
|
||||
@@ -23,10 +27,9 @@ public class FXContainment extends EntityFX {
|
||||
this.particleAlpha = 0.5f;
|
||||
this.particleScale = 1.0f;
|
||||
this.particleMaxAge = 40;
|
||||
final double motionX = 0.0;
|
||||
this.motionZ = motionX;
|
||||
this.motionY = motionX;
|
||||
this.motionX = motionX;
|
||||
this.motionZ = 0.0;
|
||||
this.motionY = 0.0;
|
||||
this.motionX = 0.0;
|
||||
this.particleRed = 1.0f;
|
||||
this.particleGreen = 1.0f;
|
||||
this.particleBlue = 1.0f;
|
||||
@@ -34,14 +37,9 @@ public class FXContainment extends EntityFX {
|
||||
this.noClip = true;
|
||||
}
|
||||
|
||||
public void renderParticle(
|
||||
final Tessellator p_70539_1_,
|
||||
final float p_70539_2_,
|
||||
final float p_70539_3_,
|
||||
final float p_70539_4_,
|
||||
final float p_70539_5_,
|
||||
final float p_70539_6_,
|
||||
final float p_70539_7_) {
|
||||
public void renderParticle(final Tessellator tessellator, final float p_70539_2_, final float p_70539_3_,
|
||||
final float p_70539_4_, final float p_70539_5_, final float p_70539_6_, final float p_70539_7_) {
|
||||
tessellator.draw();
|
||||
final long nt = System.nanoTime();
|
||||
final long time = nt / 50000000L;
|
||||
final int frame = (int) time % 16;
|
||||
@@ -52,40 +50,42 @@ public class FXContainment extends EntityFX {
|
||||
UtilsFX.bindTexture(FXContainment.portaltex);
|
||||
GL11.glPushMatrix();
|
||||
GL11.glDepthMask(false);
|
||||
GL11.glEnable(3042);
|
||||
GL11.glBlendFunc(770, 771);
|
||||
GL11.glEnable(GL11.GL_BLEND);
|
||||
GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA);
|
||||
final float f6 = 3.0f * this.particleScale;
|
||||
final float f7 = (float) (this.posX - FXContainment.interpPosX);
|
||||
final float f8 = (float) (this.posY - FXContainment.interpPosY);
|
||||
final float f9 = (float) (this.posZ - FXContainment.interpPosZ);
|
||||
p_70539_1_.setColorRGBA_F(this.particleRed, this.particleGreen, this.particleBlue, 0.1f);
|
||||
p_70539_1_.addVertexWithUV(
|
||||
(double) (f7 - p_70539_3_ * f6 - p_70539_6_ * f6),
|
||||
(double) (f8 - p_70539_4_ * f6),
|
||||
(double) (f9 - p_70539_5_ * f6 - p_70539_7_ * f6),
|
||||
(double) f2,
|
||||
(double) f4);
|
||||
p_70539_1_.addVertexWithUV(
|
||||
(double) (f7 - p_70539_3_ * f6 + p_70539_6_ * f6),
|
||||
(double) (f8 + p_70539_4_ * f6),
|
||||
(double) (f9 - p_70539_5_ * f6 + p_70539_7_ * f6),
|
||||
(double) f3,
|
||||
(double) f4);
|
||||
p_70539_1_.addVertexWithUV(
|
||||
(double) (f7 + p_70539_3_ * f6 + p_70539_6_ * f6),
|
||||
(double) (f8 + p_70539_4_ * f6),
|
||||
(double) (f9 + p_70539_5_ * f6 + p_70539_7_ * f6),
|
||||
(double) f3,
|
||||
(double) f5);
|
||||
p_70539_1_.addVertexWithUV(
|
||||
(double) (f7 + p_70539_3_ * f6 - p_70539_6_ * f6),
|
||||
(double) (f8 - p_70539_4_ * f6),
|
||||
(double) (f9 + p_70539_5_ * f6 - p_70539_7_ * f6),
|
||||
(double) f2,
|
||||
(double) f5);
|
||||
GL11.glDisable(3042);
|
||||
tessellator.setColorRGBA_F(this.particleRed, this.particleGreen, this.particleBlue, 0.1f);
|
||||
tessellator.addVertexWithUV(
|
||||
f7 - p_70539_3_ * f6 - p_70539_6_ * f6,
|
||||
f8 - p_70539_4_ * f6,
|
||||
f9 - p_70539_5_ * f6 - p_70539_7_ * f6,
|
||||
f2,
|
||||
f4);
|
||||
tessellator.addVertexWithUV(
|
||||
f7 - p_70539_3_ * f6 + p_70539_6_ * f6,
|
||||
f8 + p_70539_4_ * f6,
|
||||
f9 - p_70539_5_ * f6 + p_70539_7_ * f6,
|
||||
f3,
|
||||
f4);
|
||||
tessellator.addVertexWithUV(
|
||||
f7 + p_70539_3_ * f6 + p_70539_6_ * f6,
|
||||
f8 + p_70539_4_ * f6,
|
||||
f9 + p_70539_5_ * f6 + p_70539_7_ * f6,
|
||||
f3,
|
||||
f5);
|
||||
tessellator.addVertexWithUV(
|
||||
f7 + p_70539_3_ * f6 - p_70539_6_ * f6,
|
||||
f8 - p_70539_4_ * f6,
|
||||
f9 + p_70539_5_ * f6 - p_70539_7_ * f6,
|
||||
f2,
|
||||
f5);
|
||||
GL11.glDisable(GL11.GL_BLEND);
|
||||
GL11.glDepthMask(true);
|
||||
GL11.glPopMatrix();
|
||||
Minecraft.getMinecraft().renderEngine.bindTexture(UtilsFX.getParticleTexture());
|
||||
tessellator.startDrawingQuads();
|
||||
}
|
||||
|
||||
public int getFXLayer() {
|
||||
|
||||
@@ -5,26 +5,22 @@
|
||||
package com.kentington.thaumichorizons.client.fx;
|
||||
|
||||
import java.awt.Color;
|
||||
|
||||
import net.minecraft.client.particle.EntityFX;
|
||||
import net.minecraft.client.renderer.Tessellator;
|
||||
import net.minecraft.util.MathHelper;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
import org.lwjgl.opengl.GL11;
|
||||
|
||||
public class FXEssentiaBubble extends EntityFX {
|
||||
|
||||
private int count;
|
||||
private int delay;
|
||||
public int particle;
|
||||
|
||||
public FXEssentiaBubble(
|
||||
final World par1World,
|
||||
final double par2,
|
||||
final double par4,
|
||||
final double par6,
|
||||
final int count,
|
||||
final int color,
|
||||
final float scale,
|
||||
final int delay) {
|
||||
public FXEssentiaBubble(final World par1World, final double par2, final double par4, final double par6,
|
||||
final int count, final int color, final float scale, final int delay) {
|
||||
super(par1World, par2, par4, par6, 0.0, 0.0, 0.0);
|
||||
this.count = 0;
|
||||
this.delay = 0;
|
||||
@@ -52,14 +48,8 @@ public class FXEssentiaBubble extends EntityFX {
|
||||
this.noClip = false;
|
||||
}
|
||||
|
||||
public void renderParticle(
|
||||
final Tessellator tessellator,
|
||||
final float f,
|
||||
final float f1,
|
||||
final float f2,
|
||||
final float f3,
|
||||
final float f4,
|
||||
final float f5) {
|
||||
public void renderParticle(final Tessellator tessellator, final float f, final float f1, final float f2,
|
||||
final float f3, final float f4, final float f5) {
|
||||
if (this.delay > 0) {
|
||||
return;
|
||||
}
|
||||
@@ -76,32 +66,32 @@ public class FXEssentiaBubble extends EntityFX {
|
||||
final float var15 = (float) (this.prevPosZ + (this.posZ - this.prevPosZ) * f - FXEssentiaBubble.interpPosZ);
|
||||
final float var16 = 1.0f;
|
||||
tessellator.setBrightness(240);
|
||||
tessellator.setColorRGBA_F(
|
||||
this.particleRed * var16, this.particleGreen * var16, this.particleBlue * var16, 0.5f);
|
||||
tessellator
|
||||
.setColorRGBA_F(this.particleRed * var16, this.particleGreen * var16, this.particleBlue * var16, 0.5f);
|
||||
tessellator.addVertexWithUV(
|
||||
(double) (var13 - f1 * var12 - f4 * var12),
|
||||
(double) (var14 - f2 * var12),
|
||||
(double) (var15 - f3 * var12 - f5 * var12),
|
||||
(double) t2,
|
||||
(double) t5);
|
||||
var13 - f1 * var12 - f4 * var12,
|
||||
var14 - f2 * var12,
|
||||
var15 - f3 * var12 - f5 * var12,
|
||||
t2,
|
||||
t5);
|
||||
tessellator.addVertexWithUV(
|
||||
(double) (var13 - f1 * var12 + f4 * var12),
|
||||
(double) (var14 + f2 * var12),
|
||||
(double) (var15 - f3 * var12 + f5 * var12),
|
||||
(double) t3,
|
||||
(double) t5);
|
||||
var13 - f1 * var12 + f4 * var12,
|
||||
var14 + f2 * var12,
|
||||
var15 - f3 * var12 + f5 * var12,
|
||||
t3,
|
||||
t5);
|
||||
tessellator.addVertexWithUV(
|
||||
(double) (var13 + f1 * var12 + f4 * var12),
|
||||
(double) (var14 + f2 * var12),
|
||||
(double) (var15 + f3 * var12 + f5 * var12),
|
||||
(double) t3,
|
||||
(double) t4);
|
||||
var13 + f1 * var12 + f4 * var12,
|
||||
var14 + f2 * var12,
|
||||
var15 + f3 * var12 + f5 * var12,
|
||||
t3,
|
||||
t4);
|
||||
tessellator.addVertexWithUV(
|
||||
(double) (var13 + f1 * var12 - f4 * var12),
|
||||
(double) (var14 - f2 * var12),
|
||||
(double) (var15 + f3 * var12 - f5 * var12),
|
||||
(double) t2,
|
||||
(double) t4);
|
||||
var13 + f1 * var12 - f4 * var12,
|
||||
var14 - f2 * var12,
|
||||
var15 + f3 * var12 - f5 * var12,
|
||||
t2,
|
||||
t4);
|
||||
}
|
||||
|
||||
public int getFXLayer() {
|
||||
|
||||
@@ -5,30 +5,24 @@
|
||||
package com.kentington.thaumichorizons.client.fx;
|
||||
|
||||
import java.awt.Color;
|
||||
|
||||
import net.minecraft.client.particle.EntityFX;
|
||||
import net.minecraft.client.renderer.Tessellator;
|
||||
import net.minecraft.util.MathHelper;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
import org.lwjgl.opengl.GL11;
|
||||
|
||||
public class FXEssentiaTrail extends EntityFX {
|
||||
private double targetX;
|
||||
private double targetY;
|
||||
private double targetZ;
|
||||
|
||||
private final double targetX;
|
||||
private final double targetY;
|
||||
private final double targetZ;
|
||||
private int count;
|
||||
public int particle;
|
||||
|
||||
public FXEssentiaTrail(
|
||||
final World par1World,
|
||||
final double par2,
|
||||
final double par4,
|
||||
final double par6,
|
||||
final double tx,
|
||||
final double ty,
|
||||
final double tz,
|
||||
final int count,
|
||||
final int color,
|
||||
final float scale) {
|
||||
public FXEssentiaTrail(final World par1World, final double par2, final double par4, final double par6,
|
||||
final double tx, final double ty, final double tz, final int count, final int color, final float scale) {
|
||||
super(par1World, par2, par4, par6, 0.0, 0.0, 0.0);
|
||||
this.count = 0;
|
||||
this.particle = 24;
|
||||
@@ -59,14 +53,8 @@ public class FXEssentiaTrail extends EntityFX {
|
||||
this.noClip = false;
|
||||
}
|
||||
|
||||
public void renderParticle(
|
||||
final Tessellator tessellator,
|
||||
final float f,
|
||||
final float f1,
|
||||
final float f2,
|
||||
final float f3,
|
||||
final float f4,
|
||||
final float f5) {
|
||||
public void renderParticle(final Tessellator tessellator, final float f, final float f1, final float f2,
|
||||
final float f3, final float f4, final float f5) {
|
||||
final float t2 = 0.5625f;
|
||||
final float t3 = 0.625f;
|
||||
final float t4 = 0.0625f;
|
||||
@@ -80,32 +68,32 @@ public class FXEssentiaTrail extends EntityFX {
|
||||
final float var15 = (float) (this.prevPosZ + (this.posZ - this.prevPosZ) * f - FXEssentiaTrail.interpPosZ);
|
||||
final float var16 = 1.0f;
|
||||
tessellator.setBrightness(240);
|
||||
tessellator.setColorRGBA_F(
|
||||
this.particleRed * var16, this.particleGreen * var16, this.particleBlue * var16, 0.5f);
|
||||
tessellator
|
||||
.setColorRGBA_F(this.particleRed * var16, this.particleGreen * var16, this.particleBlue * var16, 0.5f);
|
||||
tessellator.addVertexWithUV(
|
||||
(double) (var13 - f1 * var12 - f4 * var12),
|
||||
(double) (var14 - f2 * var12),
|
||||
(double) (var15 - f3 * var12 - f5 * var12),
|
||||
(double) t2,
|
||||
(double) t5);
|
||||
var13 - f1 * var12 - f4 * var12,
|
||||
var14 - f2 * var12,
|
||||
var15 - f3 * var12 - f5 * var12,
|
||||
t2,
|
||||
t5);
|
||||
tessellator.addVertexWithUV(
|
||||
(double) (var13 - f1 * var12 + f4 * var12),
|
||||
(double) (var14 + f2 * var12),
|
||||
(double) (var15 - f3 * var12 + f5 * var12),
|
||||
(double) t3,
|
||||
(double) t5);
|
||||
var13 - f1 * var12 + f4 * var12,
|
||||
var14 + f2 * var12,
|
||||
var15 - f3 * var12 + f5 * var12,
|
||||
t3,
|
||||
t5);
|
||||
tessellator.addVertexWithUV(
|
||||
(double) (var13 + f1 * var12 + f4 * var12),
|
||||
(double) (var14 + f2 * var12),
|
||||
(double) (var15 + f3 * var12 + f5 * var12),
|
||||
(double) t3,
|
||||
(double) t4);
|
||||
var13 + f1 * var12 + f4 * var12,
|
||||
var14 + f2 * var12,
|
||||
var15 + f3 * var12 + f5 * var12,
|
||||
t3,
|
||||
t4);
|
||||
tessellator.addVertexWithUV(
|
||||
(double) (var13 + f1 * var12 - f4 * var12),
|
||||
(double) (var14 - f2 * var12),
|
||||
(double) (var15 + f3 * var12 - f5 * var12),
|
||||
(double) t2,
|
||||
(double) t4);
|
||||
var13 + f1 * var12 - f4 * var12,
|
||||
var14 - f2 * var12,
|
||||
var15 + f3 * var12 - f5 * var12,
|
||||
t2,
|
||||
t4);
|
||||
}
|
||||
|
||||
public int getFXLayer() {
|
||||
@@ -201,39 +189,33 @@ public class FXEssentiaTrail extends EntityFX {
|
||||
final float var22 = (this.rand.nextFloat() - this.rand.nextFloat()) * 0.1f;
|
||||
if (var19 == 0) {
|
||||
this.motionX = -var21;
|
||||
final double n = var22;
|
||||
this.motionZ = n;
|
||||
this.motionY = n;
|
||||
this.motionZ = var22;
|
||||
this.motionY = var22;
|
||||
}
|
||||
if (var19 == 1) {
|
||||
this.motionX = var21;
|
||||
final double n2 = var22;
|
||||
this.motionZ = n2;
|
||||
this.motionY = n2;
|
||||
this.motionZ = var22;
|
||||
this.motionY = var22;
|
||||
}
|
||||
if (var19 == 2) {
|
||||
this.motionY = -var21;
|
||||
final double n3 = var22;
|
||||
this.motionZ = n3;
|
||||
this.motionX = n3;
|
||||
this.motionZ = var22;
|
||||
this.motionX = var22;
|
||||
}
|
||||
if (var19 == 3) {
|
||||
this.motionY = var21;
|
||||
final double n4 = var22;
|
||||
this.motionZ = n4;
|
||||
this.motionX = n4;
|
||||
this.motionZ = var22;
|
||||
this.motionX = var22;
|
||||
}
|
||||
if (var19 == 4) {
|
||||
this.motionZ = -var21;
|
||||
final double n5 = var22;
|
||||
this.motionX = n5;
|
||||
this.motionY = n5;
|
||||
this.motionX = var22;
|
||||
this.motionY = var22;
|
||||
}
|
||||
if (var19 == 5) {
|
||||
this.motionZ = var21;
|
||||
final double n6 = var22;
|
||||
this.motionX = n6;
|
||||
this.motionY = n6;
|
||||
this.motionX = var22;
|
||||
this.motionY = var22;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -12,10 +12,13 @@ import net.minecraft.util.ResourceLocation;
|
||||
import net.minecraft.world.World;
|
||||
import net.minecraftforge.client.model.AdvancedModelLoader;
|
||||
import net.minecraftforge.client.model.IModelCustom;
|
||||
|
||||
import org.lwjgl.opengl.GL11;
|
||||
|
||||
import thaumcraft.client.lib.UtilsFX;
|
||||
|
||||
public class FXSonic extends EntityFX {
|
||||
|
||||
float yaw;
|
||||
float pitch;
|
||||
public static IModelCustom model;
|
||||
@@ -29,39 +32,32 @@ public class FXSonic extends EntityFX {
|
||||
this.particleGreen = 1.0f;
|
||||
this.particleBlue = 1.0f;
|
||||
this.particleGravity = 0.0f;
|
||||
final double motionX = 0.0;
|
||||
this.motionZ = motionX;
|
||||
this.motionY = motionX;
|
||||
this.motionX = motionX;
|
||||
this.motionZ = 0.0;
|
||||
this.motionY = 0.0;
|
||||
this.motionX = 0.0;
|
||||
this.particleMaxAge = age + this.rand.nextInt(age / 2);
|
||||
this.noClip = false;
|
||||
this.setSize(0.01f, 0.01f);
|
||||
this.noClip = true;
|
||||
this.particleScale = 1.0f;
|
||||
switch (dir) {
|
||||
case 0: {
|
||||
case 0 -> {
|
||||
this.pitch = 90.0f;
|
||||
break;
|
||||
}
|
||||
case 1: {
|
||||
case 1 -> {
|
||||
this.pitch = -90.0f;
|
||||
break;
|
||||
}
|
||||
case 2: {
|
||||
case 2 -> {
|
||||
this.yaw = 180.0f;
|
||||
break;
|
||||
}
|
||||
case 3: {
|
||||
case 3 -> {
|
||||
this.yaw = 0.0f;
|
||||
break;
|
||||
}
|
||||
case 4: {
|
||||
case 4 -> {
|
||||
this.yaw = 90.0f;
|
||||
break;
|
||||
}
|
||||
case 5: {
|
||||
case 5 -> {
|
||||
this.yaw = 270.0f;
|
||||
break;
|
||||
}
|
||||
}
|
||||
this.prevPosX = this.posX;
|
||||
@@ -69,27 +65,21 @@ public class FXSonic extends EntityFX {
|
||||
this.prevPosZ = this.posZ;
|
||||
}
|
||||
|
||||
public void renderParticle(
|
||||
final Tessellator tessellator,
|
||||
final float f,
|
||||
final float f1,
|
||||
final float f2,
|
||||
final float f3,
|
||||
final float f4,
|
||||
final float f5) {
|
||||
public void renderParticle(final Tessellator tessellator, final float f, final float f1, final float f2,
|
||||
final float f3, final float f4, final float f5) {
|
||||
tessellator.draw();
|
||||
GL11.glPushMatrix();
|
||||
GL11.glDisable(2884);
|
||||
GL11.glEnable(3042);
|
||||
GL11.glBlendFunc(770, 1);
|
||||
if (this.model == null) {
|
||||
this.model = AdvancedModelLoader.loadModel(FXSonic.MODEL);
|
||||
GL11.glDisable(GL11.GL_CULL_FACE);
|
||||
GL11.glEnable(GL11.GL_BLEND);
|
||||
GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE);
|
||||
if (model == null) {
|
||||
model = AdvancedModelLoader.loadModel(FXSonic.MODEL);
|
||||
}
|
||||
final float fade = (this.particleAge + f) / this.particleMaxAge;
|
||||
final float xx = (float) (this.prevPosX + (this.posX - this.prevPosX) * f - FXSonic.interpPosX);
|
||||
final float yy = (float) (this.prevPosY + (this.posY - this.prevPosY) * f - FXSonic.interpPosY);
|
||||
final float zz = (float) (this.prevPosZ + (this.posZ - this.prevPosZ) * f - FXSonic.interpPosZ);
|
||||
GL11.glTranslated((double) xx, (double) yy, (double) zz);
|
||||
GL11.glTranslated(xx, yy, zz);
|
||||
float b = 1.0f;
|
||||
final int frame = Math.min(15, (int) (14.0f * fade) + 1);
|
||||
UtilsFX.bindTexture("textures/models/ripple" + frame + ".png");
|
||||
@@ -97,14 +87,14 @@ public class FXSonic extends EntityFX {
|
||||
final int i = 220;
|
||||
final int j = i % 65536;
|
||||
final int k = i / 65536;
|
||||
OpenGlHelper.setLightmapTextureCoords(OpenGlHelper.lightmapTexUnit, j / 1.0f, k / 1.0f);
|
||||
OpenGlHelper.setLightmapTextureCoords(OpenGlHelper.lightmapTexUnit, j, k);
|
||||
GL11.glRotatef(-this.yaw, 0.0f, 1.0f, 0.0f);
|
||||
GL11.glRotatef(this.pitch, 1.0f, 0.0f, 0.0f);
|
||||
GL11.glScaled(0.5, 0.5, -0.5);
|
||||
GL11.glColor4f(0.0f, b, b, 1.0f);
|
||||
this.model.renderAll();
|
||||
GL11.glDisable(3042);
|
||||
GL11.glEnable(2884);
|
||||
model.renderAll();
|
||||
GL11.glDisable(GL11.GL_BLEND);
|
||||
GL11.glEnable(GL11.GL_CULL_FACE);
|
||||
GL11.glPopMatrix();
|
||||
Minecraft.getMinecraft().renderEngine.bindTexture(UtilsFX.getParticleTexture());
|
||||
tessellator.startDrawingQuads();
|
||||
|
||||
@@ -4,19 +4,22 @@
|
||||
|
||||
package com.kentington.thaumichorizons.client.gui;
|
||||
|
||||
import com.kentington.thaumichorizons.common.container.ContainerBloodInfuser;
|
||||
import com.kentington.thaumichorizons.common.tiles.TileBloodInfuser;
|
||||
import java.awt.Color;
|
||||
import java.util.HashMap;
|
||||
|
||||
import net.minecraft.client.Minecraft;
|
||||
import net.minecraft.client.gui.inventory.GuiContainer;
|
||||
import net.minecraft.client.renderer.Tessellator;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.inventory.Container;
|
||||
import net.minecraft.nbt.NBTTagList;
|
||||
import net.minecraft.potion.Potion;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
|
||||
import org.lwjgl.opengl.GL11;
|
||||
|
||||
import com.kentington.thaumichorizons.common.container.ContainerBloodInfuser;
|
||||
import com.kentington.thaumichorizons.common.tiles.TileBloodInfuser;
|
||||
|
||||
import thaumcraft.api.aspects.Aspect;
|
||||
import thaumcraft.api.aspects.AspectList;
|
||||
import thaumcraft.client.fx.ParticleEngine;
|
||||
@@ -25,6 +28,7 @@ import thaumcraft.common.Thaumcraft;
|
||||
import thaumcraft.common.config.Config;
|
||||
|
||||
public class GuiBloodInfuser extends GuiContainer {
|
||||
|
||||
TileBloodInfuser tile;
|
||||
AspectList aspectsKnown;
|
||||
Aspect[] aspectsSelected;
|
||||
@@ -43,7 +47,7 @@ public class GuiBloodInfuser extends GuiContainer {
|
||||
NBTTagList cachedEffects;
|
||||
|
||||
public GuiBloodInfuser(final EntityPlayer p, final TileBloodInfuser tile) {
|
||||
super((Container) new ContainerBloodInfuser(p, tile));
|
||||
super(new ContainerBloodInfuser(p, tile));
|
||||
this.aspectsSelected = new Aspect[8];
|
||||
this.numSelected = 0;
|
||||
this.offset = 0;
|
||||
@@ -69,16 +73,16 @@ public class GuiBloodInfuser extends GuiContainer {
|
||||
this.cachedEffects = tile.getCurrentEffects();
|
||||
}
|
||||
|
||||
protected void drawGuiContainerBackgroundLayer(
|
||||
final float p_146976_1_, final int p_146976_2_, final int p_146976_3_) {
|
||||
protected void drawGuiContainerBackgroundLayer(final float p_146976_1_, final int p_146976_2_,
|
||||
final int p_146976_3_) {
|
||||
GL11.glPushMatrix();
|
||||
GL11.glEnable(3042);
|
||||
GL11.glEnable(GL11.GL_BLEND);
|
||||
UtilsFX.bindTexture(new ResourceLocation("thaumichorizons", "textures/gui/guibloodinfuser.png"));
|
||||
GL11.glColor4f(1.0f, 1.0f, 1.0f, 1.0f);
|
||||
final int var5 = (this.width - this.xSize) / 2;
|
||||
final int var6 = (this.height - this.ySize) / 2;
|
||||
this.drawTexturedModalRect(var5, var6, 0, 0, this.xSize, this.ySize);
|
||||
GL11.glDisable(3042);
|
||||
GL11.glDisable(GL11.GL_BLEND);
|
||||
GL11.glPopMatrix();
|
||||
}
|
||||
|
||||
@@ -86,7 +90,7 @@ public class GuiBloodInfuser extends GuiContainer {
|
||||
this.drawEssentiaSelected();
|
||||
this.drawAspectList();
|
||||
GL11.glPushMatrix();
|
||||
GL11.glEnable(3042);
|
||||
GL11.glEnable(GL11.GL_BLEND);
|
||||
UtilsFX.bindTexture(new ResourceLocation("thaumichorizons", "textures/gui/guibloodinfuser.png"));
|
||||
GL11.glColor4f(1.0f, 1.0f, 1.0f, 1.0f);
|
||||
if (this.canScrollLeft()) {
|
||||
@@ -146,10 +150,12 @@ public class GuiBloodInfuser extends GuiContainer {
|
||||
if (potion.hasStatusIcon()) {
|
||||
this.mc.getTextureManager().bindTexture(GuiBloodInfuser.field_147001_a);
|
||||
final int l = potion.getStatusIconIndex();
|
||||
this.drawTexturedModalRect(
|
||||
j * 18 + 171, k * 18 + 72, 0 + l % 8 * 18, 198 + l / 8 * 18, 18, 18);
|
||||
this.drawTexturedModalRect(j * 18 + 171, k * 18 + 72, l % 8 * 18, 198 + l / 8 * 18, 18, 18);
|
||||
this.fontRendererObj.drawString(
|
||||
"" + this.mousedEffects.get(key), j * 18 + 171, k * 18 + 72, Color.GRAY.getRGB());
|
||||
"" + this.mousedEffects.get(key),
|
||||
j * 18 + 171,
|
||||
k * 18 + 72,
|
||||
Color.GRAY.getRGB());
|
||||
GL11.glColor4f(1.0f, 1.0f, 1.0f, 1.0f);
|
||||
if (j == 0) {
|
||||
j = 1;
|
||||
@@ -158,21 +164,21 @@ public class GuiBloodInfuser extends GuiContainer {
|
||||
++k;
|
||||
}
|
||||
} else {
|
||||
this.mc
|
||||
.getTextureManager()
|
||||
this.mc.getTextureManager()
|
||||
.bindTexture(new ResourceLocation("thaumichorizons", "textures/misc/potions.png"));
|
||||
int ecks2 = 0;
|
||||
int ecks2 = 0; // Potion.heal.id
|
||||
final int why2 = 216;
|
||||
if (potion.getId() == 23) {
|
||||
ecks2 = 36;
|
||||
} else if (potion.getId() == Potion.heal.id) {
|
||||
ecks2 = 0;
|
||||
} else if (potion.getId() == Potion.harm.id) {
|
||||
ecks2 = 18;
|
||||
}
|
||||
this.drawTexturedModalRect(j * 18 + 171, k * 18 + 72, ecks2, why2, 18, 18);
|
||||
this.fontRendererObj.drawString(
|
||||
"" + this.mousedEffects.get(key), j * 18 + 171, k * 18 + 72, Color.GRAY.getRGB());
|
||||
"" + this.mousedEffects.get(key),
|
||||
j * 18 + 171,
|
||||
k * 18 + 72,
|
||||
Color.GRAY.getRGB());
|
||||
GL11.glColor4f(1.0f, 1.0f, 1.0f, 1.0f);
|
||||
if (j == 0) {
|
||||
j = 1;
|
||||
@@ -195,13 +201,13 @@ public class GuiBloodInfuser extends GuiContainer {
|
||||
int k = 0;
|
||||
if (this.topOut == 38) {
|
||||
for (int index = 0; index < this.cachedEffects.tagCount(); ++index) {
|
||||
final Byte id = this.cachedEffects.getCompoundTagAt(index).getByte("Id");
|
||||
final byte id = this.cachedEffects.getCompoundTagAt(index).getByte("Id");
|
||||
if (id < 0 || id >= Potion.potionTypes.length) continue;
|
||||
final Potion potion = Potion.potionTypes[id];
|
||||
if (potion != null) {
|
||||
this.mc.getTextureManager().bindTexture(GuiBloodInfuser.field_147001_a);
|
||||
final int l = potion.getStatusIconIndex();
|
||||
this.drawTexturedModalRect(j * 18 + 171, k * 18 + 28, 0 + l % 8 * 18, 198 + l / 8 * 18, 18, 18);
|
||||
this.drawTexturedModalRect(j * 18 + 171, k * 18 + 28, l % 8 * 18, 198 + l / 8 * 18, 18, 18);
|
||||
this.fontRendererObj.drawString(
|
||||
"" + (this.cachedEffects.getCompoundTagAt(index).getByte("Amplifier") + 1),
|
||||
j * 18 + 171,
|
||||
@@ -228,7 +234,7 @@ public class GuiBloodInfuser extends GuiContainer {
|
||||
--this.flashTimer;
|
||||
this.drawFlash();
|
||||
}
|
||||
GL11.glDisable(3042);
|
||||
GL11.glDisable(GL11.GL_BLEND);
|
||||
GL11.glPopMatrix();
|
||||
}
|
||||
|
||||
@@ -271,8 +277,7 @@ public class GuiBloodInfuser extends GuiContainer {
|
||||
for (int i = 0; i < 16; ++i) {
|
||||
x = par1 - (gx + 14 + 18 * (i / 2));
|
||||
y = par2 - (gy + 83 + ((i % 2 == 0) ? 18 : 0));
|
||||
if (this.offset + i < this.aspectsKnown.getAspectsSorted().length
|
||||
&& this.numSelected < 8
|
||||
if (this.offset + i < this.aspectsKnown.getAspectsSorted().length && this.numSelected < 8
|
||||
&& x >= 0
|
||||
&& x <= 16
|
||||
&& y >= 0
|
||||
@@ -298,16 +303,15 @@ public class GuiBloodInfuser extends GuiContainer {
|
||||
for (int i = 0; i < 8; ++i) {
|
||||
x = par1 - (gx + 54 + ((i % 2 == 1) ? 17 : 0));
|
||||
y = par2 - (gy + 12 + 17 * (i / 2));
|
||||
if (this.numSelected > i
|
||||
&& x >= 0
|
||||
if (this.numSelected > i && x >= 0
|
||||
&& x <= 16
|
||||
&& y >= 0
|
||||
&& y <= 16
|
||||
&& Thaumcraft.proxy.playerKnowledge.hasDiscoveredAspect(
|
||||
this.mc.thePlayer.getCommandSenderName(), this.aspectsSelected[i])) {
|
||||
&& Thaumcraft.proxy.playerKnowledge
|
||||
.hasDiscoveredAspect(this.mc.thePlayer.getCommandSenderName(), this.aspectsSelected[i])) {
|
||||
this.tile.aspectsSelected.remove(this.aspectsSelected[i], 1);
|
||||
this.mc.playerController.sendEnchantPacket(
|
||||
this.inventorySlots.windowId, 3 + this.findInList(this.aspectsSelected[i]));
|
||||
this.mc.playerController
|
||||
.sendEnchantPacket(this.inventorySlots.windowId, 3 + this.findInList(this.aspectsSelected[i]));
|
||||
this.flashTimer = 8;
|
||||
this.flashColor = new Color(this.aspectsSelected[i].getColor());
|
||||
this.flashX = par1 - gx - 8;
|
||||
@@ -342,7 +346,7 @@ public class GuiBloodInfuser extends GuiContainer {
|
||||
GL11.glPushMatrix();
|
||||
UtilsFX.bindTexture(ParticleEngine.particleTexture);
|
||||
GL11.glColor4f(1.0f, 1.0f, 1.0f, 1.0f);
|
||||
GL11.glTranslated((double) this.flashX, (double) this.flashY, 0.0);
|
||||
GL11.glTranslated(this.flashX, this.flashY, 0.0);
|
||||
final Tessellator tessellator = Tessellator.instance;
|
||||
final int part = this.flashTimer;
|
||||
final float var8 = 0.5f + part / 8.0f;
|
||||
@@ -352,10 +356,10 @@ public class GuiBloodInfuser extends GuiContainer {
|
||||
tessellator.startDrawingQuads();
|
||||
tessellator.setBrightness(240);
|
||||
tessellator.setColorRGBA_F(red, green, blue, 1.0f);
|
||||
tessellator.addVertexWithUV(0.0, 16.0, (double) this.zLevel, (double) var9, (double) var11);
|
||||
tessellator.addVertexWithUV(16.0, 16.0, (double) this.zLevel, (double) var9, (double) var10);
|
||||
tessellator.addVertexWithUV(16.0, 0.0, (double) this.zLevel, (double) var8, (double) var10);
|
||||
tessellator.addVertexWithUV(0.0, 0.0, (double) this.zLevel, (double) var8, (double) var11);
|
||||
tessellator.addVertexWithUV(0.0, 16.0, this.zLevel, var9, var11);
|
||||
tessellator.addVertexWithUV(16.0, 16.0, this.zLevel, var9, var10);
|
||||
tessellator.addVertexWithUV(16.0, 0.0, this.zLevel, var8, var10);
|
||||
tessellator.addVertexWithUV(0.0, 0.0, this.zLevel, var8, var11);
|
||||
tessellator.draw();
|
||||
GL11.glPopMatrix();
|
||||
}
|
||||
@@ -378,7 +382,7 @@ public class GuiBloodInfuser extends GuiContainer {
|
||||
asp,
|
||||
0.0f,
|
||||
0,
|
||||
(double) this.zLevel,
|
||||
this.zLevel,
|
||||
771,
|
||||
1.0f,
|
||||
false);
|
||||
@@ -390,15 +394,15 @@ public class GuiBloodInfuser extends GuiContainer {
|
||||
for (int i = 0; i < this.numSelected; ++i) {
|
||||
final Aspect asp = this.aspectsSelected[i];
|
||||
alreadyUsed.add(asp, 1);
|
||||
if (Thaumcraft.proxy.playerKnowledge.hasDiscoveredAspect(
|
||||
this.mc.thePlayer.getCommandSenderName(), this.aspectsSelected[i])) {
|
||||
if (Thaumcraft.proxy.playerKnowledge
|
||||
.hasDiscoveredAspect(this.mc.thePlayer.getCommandSenderName(), this.aspectsSelected[i])) {
|
||||
UtilsFX.drawTag(
|
||||
54 + ((i % 2 == 1) ? 17 : 0),
|
||||
12 + 17 * (i / 2),
|
||||
asp,
|
||||
0.0f,
|
||||
0,
|
||||
(double) this.zLevel,
|
||||
this.zLevel,
|
||||
771,
|
||||
1.0f,
|
||||
this.tile.aspectsAcquired.getAmount(asp) < alreadyUsed.getAmount(asp));
|
||||
@@ -415,26 +419,26 @@ public class GuiBloodInfuser extends GuiContainer {
|
||||
void drawQuestionMark(final int x, final int y, final Color color) {
|
||||
final Minecraft mc = Minecraft.getMinecraft();
|
||||
GL11.glPushMatrix();
|
||||
GL11.glDisable(2896);
|
||||
GL11.glAlphaFunc(516, 0.003921569f);
|
||||
GL11.glEnable(3042);
|
||||
GL11.glBlendFunc(770, 771);
|
||||
GL11.glDisable(GL11.GL_LIGHTING);
|
||||
GL11.glAlphaFunc(GL11.GL_GREATER, 0.003921569f);
|
||||
GL11.glEnable(GL11.GL_BLEND);
|
||||
GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA);
|
||||
GL11.glPushMatrix();
|
||||
mc.renderEngine.bindTexture(new ResourceLocation("thaumcraft", "textures/aspects/_unknown.png"));
|
||||
GL11.glColor4f(color.getRed() / 255.0f, color.getGreen() / 255.0f, color.getBlue() / 255.0f, 0.8f);
|
||||
final Tessellator var9 = Tessellator.instance;
|
||||
var9.startDrawingQuads();
|
||||
var9.setColorRGBA_F(color.getRed() / 255.0f, color.getGreen() / 255.0f, color.getBlue() / 255.0f, 0.8f);
|
||||
var9.addVertexWithUV(x + 0.0, y + 16.0, (double) this.zLevel, 0.0, 1.0);
|
||||
var9.addVertexWithUV(x + 16.0, y + 16.0, (double) this.zLevel, 1.0, 1.0);
|
||||
var9.addVertexWithUV(x + 16.0, y + 0.0, (double) this.zLevel, 1.0, 0.0);
|
||||
var9.addVertexWithUV(x + 0.0, y + 0.0, (double) this.zLevel, 0.0, 0.0);
|
||||
var9.addVertexWithUV(x + 0.0, y + 16.0, this.zLevel, 0.0, 1.0);
|
||||
var9.addVertexWithUV(x + 16.0, y + 16.0, this.zLevel, 1.0, 1.0);
|
||||
var9.addVertexWithUV(x + 16.0, y + 0.0, this.zLevel, 1.0, 0.0);
|
||||
var9.addVertexWithUV(x + 0.0, y + 0.0, this.zLevel, 0.0, 0.0);
|
||||
var9.draw();
|
||||
GL11.glPopMatrix();
|
||||
GL11.glDisable(3042);
|
||||
GL11.glDisable(GL11.GL_BLEND);
|
||||
GL11.glColor4f(1.0f, 1.0f, 1.0f, 1.0f);
|
||||
GL11.glAlphaFunc(516, 0.1f);
|
||||
GL11.glEnable(2896);
|
||||
GL11.glAlphaFunc(GL11.GL_GREATER, 0.1f);
|
||||
GL11.glEnable(GL11.GL_LIGHTING);
|
||||
GL11.glPopMatrix();
|
||||
}
|
||||
|
||||
|
||||
@@ -4,35 +4,38 @@
|
||||
|
||||
package com.kentington.thaumichorizons.client.gui;
|
||||
|
||||
import com.kentington.thaumichorizons.common.container.ContainerCase;
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import net.minecraft.client.gui.inventory.GuiContainer;
|
||||
import net.minecraft.entity.player.InventoryPlayer;
|
||||
import net.minecraft.inventory.Container;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
import org.lwjgl.opengl.GL11;
|
||||
|
||||
import com.kentington.thaumichorizons.common.container.ContainerCase;
|
||||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import thaumcraft.client.lib.UtilsFX;
|
||||
|
||||
@SideOnly(Side.CLIENT)
|
||||
public class GuiCase extends GuiContainer {
|
||||
private int blockSlot;
|
||||
|
||||
public GuiCase(
|
||||
final InventoryPlayer par1InventoryPlayer, final World world, final int x, final int y, final int z) {
|
||||
super((Container) new ContainerCase(par1InventoryPlayer, world, x, y, z));
|
||||
private final int blockSlot;
|
||||
|
||||
public GuiCase(final InventoryPlayer par1InventoryPlayer, final World world, final int x, final int y,
|
||||
final int z) {
|
||||
super(new ContainerCase(par1InventoryPlayer, world, x, y, z));
|
||||
this.blockSlot = par1InventoryPlayer.currentItem;
|
||||
this.xSize = 175;
|
||||
this.ySize = 232;
|
||||
this.xSize = 176;
|
||||
this.ySize = 233;
|
||||
}
|
||||
|
||||
protected void drawGuiContainerForegroundLayer(final int par1, final int par2) {
|
||||
UtilsFX.bindTexture("textures/gui/gui_focuspouch.png");
|
||||
final float t = this.zLevel;
|
||||
this.zLevel = 200.0f;
|
||||
GL11.glEnable(3042);
|
||||
GL11.glEnable(GL11.GL_BLEND);
|
||||
this.drawTexturedModalRect(8 + this.blockSlot * 18, 209, 240, 0, 16, 16);
|
||||
GL11.glDisable(3042);
|
||||
GL11.glDisable(GL11.GL_BLEND);
|
||||
this.zLevel = t;
|
||||
}
|
||||
|
||||
@@ -48,8 +51,8 @@ public class GuiCase extends GuiContainer {
|
||||
GL11.glColor4f(1.0f, 1.0f, 1.0f, 1.0f);
|
||||
final int var5 = (this.width - this.xSize) / 2;
|
||||
final int var6 = (this.height - this.ySize) / 2;
|
||||
GL11.glEnable(3042);
|
||||
GL11.glEnable(GL11.GL_BLEND);
|
||||
this.drawTexturedModalRect(var5, var6, 0, 0, this.xSize, this.ySize);
|
||||
GL11.glDisable(3042);
|
||||
GL11.glDisable(GL11.GL_BLEND);
|
||||
}
|
||||
}
|
||||
@@ -4,17 +4,19 @@
|
||||
|
||||
package com.kentington.thaumichorizons.client.gui;
|
||||
|
||||
import com.kentington.thaumichorizons.common.container.ContainerFingers;
|
||||
import com.kentington.thaumichorizons.common.container.InventoryFingers;
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import java.util.ArrayList;
|
||||
|
||||
import net.minecraft.client.gui.inventory.GuiContainer;
|
||||
import net.minecraft.entity.player.InventoryPlayer;
|
||||
import net.minecraft.inventory.Container;
|
||||
import net.minecraft.inventory.IInventory;
|
||||
import net.minecraft.util.MathHelper;
|
||||
|
||||
import org.lwjgl.opengl.GL11;
|
||||
|
||||
import com.kentington.thaumichorizons.common.container.ContainerFingers;
|
||||
import com.kentington.thaumichorizons.common.container.InventoryFingers;
|
||||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import thaumcraft.api.aspects.Aspect;
|
||||
import thaumcraft.api.aspects.AspectList;
|
||||
import thaumcraft.client.lib.UtilsFX;
|
||||
@@ -23,14 +25,15 @@ import thaumcraft.common.lib.crafting.ThaumcraftCraftingManager;
|
||||
|
||||
@SideOnly(Side.CLIENT)
|
||||
public class GuiFingers extends GuiContainer {
|
||||
private InventoryPlayer ip;
|
||||
private InventoryFingers tileEntity;
|
||||
private int[][] aspectLocs;
|
||||
|
||||
private final InventoryPlayer ip;
|
||||
private final InventoryFingers tileEntity;
|
||||
private final int[][] aspectLocs;
|
||||
ArrayList<Aspect> primals;
|
||||
|
||||
public GuiFingers(final InventoryPlayer par1InventoryPlayer) {
|
||||
super((Container) new ContainerFingers(par1InventoryPlayer));
|
||||
this.aspectLocs = new int[][] {{72, 21}, {24, 43}, {24, 102}, {72, 124}, {120, 102}, {120, 43}};
|
||||
super(new ContainerFingers(par1InventoryPlayer));
|
||||
this.aspectLocs = new int[][] { { 72, 21 }, { 24, 43 }, { 24, 102 }, { 72, 124 }, { 120, 102 }, { 120, 43 } };
|
||||
this.primals = Aspect.getPrimalAspects();
|
||||
this.tileEntity = ((ContainerFingers) this.inventorySlots).tileEntity;
|
||||
this.ip = par1InventoryPlayer;
|
||||
@@ -43,29 +46,31 @@ public class GuiFingers extends GuiContainer {
|
||||
protected void drawGuiContainerBackgroundLayer(final float par1, final int par2, final int par3) {
|
||||
UtilsFX.bindTexture("thaumichorizons", "textures/gui/guifingers.png");
|
||||
GL11.glColor4f(1.0f, 1.0f, 1.0f, 1.0f);
|
||||
GL11.glEnable(3042);
|
||||
GL11.glEnable(GL11.GL_BLEND);
|
||||
final int var5 = (this.width - this.xSize) / 2;
|
||||
final int var6 = (this.height - this.ySize) / 2;
|
||||
this.drawTexturedModalRect(var5, var6, 0, 0, this.xSize, this.ySize);
|
||||
GL11.glDisable(3042);
|
||||
GL11.glDisable(GL11.GL_BLEND);
|
||||
ItemWandCasting wand = null;
|
||||
if (this.tileEntity.getStackInSlot(10) != null
|
||||
&& this.tileEntity.getStackInSlot(10).getItem() instanceof ItemWandCasting) {
|
||||
wand = (ItemWandCasting) this.tileEntity.getStackInSlot(10).getItem();
|
||||
}
|
||||
AspectList cost = null;
|
||||
if (ThaumcraftCraftingManager.findMatchingArcaneRecipe((IInventory) this.tileEntity, this.ip.player) != null) {
|
||||
cost = ThaumcraftCraftingManager.findMatchingArcaneRecipeAspects(
|
||||
(IInventory) this.tileEntity, this.ip.player);
|
||||
if (ThaumcraftCraftingManager.findMatchingArcaneRecipe(this.tileEntity, this.ip.player) != null) {
|
||||
cost = ThaumcraftCraftingManager.findMatchingArcaneRecipeAspects(this.tileEntity, this.ip.player);
|
||||
int count = 0;
|
||||
for (final Aspect primal : this.primals) {
|
||||
float amt = cost.getAmount(primal);
|
||||
if (cost.getAmount(primal) > 0) {
|
||||
float alpha =
|
||||
0.5f + (MathHelper.sin((this.ip.player.ticksExisted + count * 10) / 2.0f) * 0.2f - 0.2f);
|
||||
float alpha = 0.5f
|
||||
+ (MathHelper.sin((this.ip.player.ticksExisted + count * 10) / 2.0f) * 0.2f - 0.2f);
|
||||
if (wand != null) {
|
||||
amt *= wand.getConsumptionModifier(
|
||||
this.tileEntity.getStackInSlot(10), this.ip.player, primal, true);
|
||||
this.tileEntity.getStackInSlot(10),
|
||||
this.ip.player,
|
||||
primal,
|
||||
true);
|
||||
if (amt * 100.0f <= wand.getVis(this.tileEntity.getStackInSlot(10), primal)) {
|
||||
alpha = 1.0f;
|
||||
}
|
||||
@@ -76,7 +81,7 @@ public class GuiFingers extends GuiContainer {
|
||||
primal,
|
||||
amt,
|
||||
0,
|
||||
(double) this.zLevel,
|
||||
this.zLevel,
|
||||
771,
|
||||
alpha,
|
||||
false);
|
||||
@@ -86,31 +91,30 @@ public class GuiFingers extends GuiContainer {
|
||||
}
|
||||
}
|
||||
}
|
||||
if (wand != null
|
||||
&& cost != null
|
||||
if (wand != null && cost != null
|
||||
&& !wand.consumeAllVisCrafting(this.tileEntity.getStackInSlot(10), this.ip.player, cost, false)) {
|
||||
GL11.glPushMatrix();
|
||||
final float var7 = 0.33f;
|
||||
GL11.glColor4f(var7, var7, var7, 0.66f);
|
||||
GuiFingers.itemRender.renderWithColor = false;
|
||||
GL11.glEnable(2896);
|
||||
GL11.glEnable(2884);
|
||||
GL11.glEnable(3042);
|
||||
GL11.glEnable(GL11.GL_LIGHTING);
|
||||
GL11.glEnable(GL11.GL_CULL_FACE);
|
||||
GL11.glEnable(GL11.GL_BLEND);
|
||||
GuiFingers.itemRender.renderItemAndEffectIntoGUI(
|
||||
this.mc.fontRenderer,
|
||||
this.mc.renderEngine,
|
||||
ThaumcraftCraftingManager.findMatchingArcaneRecipe((IInventory) this.tileEntity, this.ip.player),
|
||||
ThaumcraftCraftingManager.findMatchingArcaneRecipe(this.tileEntity, this.ip.player),
|
||||
var5 + 160,
|
||||
var6 + 64);
|
||||
GuiFingers.itemRender.renderItemOverlayIntoGUI(
|
||||
this.mc.fontRenderer,
|
||||
this.mc.renderEngine,
|
||||
ThaumcraftCraftingManager.findMatchingArcaneRecipe((IInventory) this.tileEntity, this.ip.player),
|
||||
ThaumcraftCraftingManager.findMatchingArcaneRecipe(this.tileEntity, this.ip.player),
|
||||
var5 + 160,
|
||||
var6 + 64);
|
||||
GuiFingers.itemRender.renderWithColor = true;
|
||||
GL11.glDisable(3042);
|
||||
GL11.glDisable(2896);
|
||||
GL11.glDisable(GL11.GL_BLEND);
|
||||
GL11.glDisable(GL11.GL_LIGHTING);
|
||||
GL11.glPopMatrix();
|
||||
GL11.glPushMatrix();
|
||||
GL11.glTranslatef((float) (var5 + 168), (float) (var6 + 46), 0.0f);
|
||||
|
||||
@@ -4,31 +4,34 @@
|
||||
|
||||
package com.kentington.thaumichorizons.client.gui;
|
||||
|
||||
import com.kentington.thaumichorizons.common.container.ContainerInjector;
|
||||
import net.minecraft.client.gui.inventory.GuiContainer;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.inventory.Container;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
|
||||
import org.lwjgl.opengl.GL11;
|
||||
|
||||
import com.kentington.thaumichorizons.common.container.ContainerInjector;
|
||||
|
||||
import thaumcraft.client.lib.UtilsFX;
|
||||
|
||||
public class GuiInjector extends GuiContainer {
|
||||
|
||||
public GuiInjector(final EntityPlayer p) {
|
||||
super((Container) new ContainerInjector(p));
|
||||
super(new ContainerInjector(p));
|
||||
this.xSize = 175;
|
||||
this.ySize = 191;
|
||||
}
|
||||
|
||||
protected void drawGuiContainerBackgroundLayer(
|
||||
final float p_146976_1_, final int p_146976_2_, final int p_146976_3_) {
|
||||
protected void drawGuiContainerBackgroundLayer(final float p_146976_1_, final int p_146976_2_,
|
||||
final int p_146976_3_) {
|
||||
GL11.glPushMatrix();
|
||||
GL11.glEnable(3042);
|
||||
GL11.glEnable(GL11.GL_BLEND);
|
||||
UtilsFX.bindTexture(new ResourceLocation("thaumichorizons", "textures/gui/guiinjector.png"));
|
||||
GL11.glColor4f(1.0f, 1.0f, 1.0f, 1.0f);
|
||||
final int var5 = (this.width - this.xSize) / 2;
|
||||
final int var6 = (this.height - this.ySize) / 2;
|
||||
this.drawTexturedModalRect(var5, var6, 0, 0, this.xSize, this.ySize);
|
||||
GL11.glDisable(3042);
|
||||
GL11.glDisable(GL11.GL_BLEND);
|
||||
GL11.glPopMatrix();
|
||||
}
|
||||
}
|
||||
@@ -4,29 +4,32 @@
|
||||
|
||||
package com.kentington.thaumichorizons.client.gui;
|
||||
|
||||
import com.kentington.thaumichorizons.common.container.ContainerInspiratron;
|
||||
import com.kentington.thaumichorizons.common.tiles.TileInspiratron;
|
||||
import net.minecraft.client.gui.inventory.GuiContainer;
|
||||
import net.minecraft.entity.player.InventoryPlayer;
|
||||
import net.minecraft.inventory.Container;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
|
||||
import org.lwjgl.opengl.GL11;
|
||||
|
||||
import com.kentington.thaumichorizons.common.container.ContainerInspiratron;
|
||||
import com.kentington.thaumichorizons.common.tiles.TileInspiratron;
|
||||
|
||||
import thaumcraft.client.lib.UtilsFX;
|
||||
|
||||
public class GuiInspiratron extends GuiContainer {
|
||||
|
||||
TileInspiratron tile;
|
||||
|
||||
public GuiInspiratron(final InventoryPlayer player, final TileInspiratron tile) {
|
||||
super((Container) new ContainerInspiratron(player, tile));
|
||||
super(new ContainerInspiratron(player, tile));
|
||||
this.tile = tile;
|
||||
this.xSize = 175;
|
||||
this.xSize = 176;
|
||||
this.ySize = 219;
|
||||
}
|
||||
|
||||
protected void drawGuiContainerBackgroundLayer(
|
||||
final float p_146976_1_, final int p_146976_2_, final int p_146976_3_) {
|
||||
protected void drawGuiContainerBackgroundLayer(final float p_146976_1_, final int p_146976_2_,
|
||||
final int p_146976_3_) {
|
||||
GL11.glPushMatrix();
|
||||
GL11.glEnable(3042);
|
||||
GL11.glEnable(GL11.GL_BLEND);
|
||||
UtilsFX.bindTexture(new ResourceLocation("thaumichorizons", "textures/gui/guiinspiratron.png"));
|
||||
GL11.glColor4f(1.0f, 1.0f, 1.0f, 1.0f);
|
||||
final int var5 = (this.width - this.xSize) / 2;
|
||||
@@ -34,7 +37,7 @@ public class GuiInspiratron extends GuiContainer {
|
||||
this.drawTexturedModalRect(var5, var6, 0, 0, this.xSize, this.ySize);
|
||||
final int i1 = this.tile.getTimeRemainingScaled(28);
|
||||
this.drawTexturedModalRect(var5 + 66, var6 + 102, 176, 158 - i1, 44, i1);
|
||||
GL11.glDisable(3042);
|
||||
GL11.glDisable(GL11.GL_BLEND);
|
||||
GL11.glPopMatrix();
|
||||
}
|
||||
}
|
||||
@@ -4,29 +4,32 @@
|
||||
|
||||
package com.kentington.thaumichorizons.client.gui;
|
||||
|
||||
import com.kentington.thaumichorizons.common.container.ContainerSoulExtractor;
|
||||
import com.kentington.thaumichorizons.common.tiles.TileSoulExtractor;
|
||||
import net.minecraft.client.gui.inventory.GuiContainer;
|
||||
import net.minecraft.entity.player.InventoryPlayer;
|
||||
import net.minecraft.inventory.Container;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
|
||||
import org.lwjgl.opengl.GL11;
|
||||
|
||||
import com.kentington.thaumichorizons.common.container.ContainerSoulExtractor;
|
||||
import com.kentington.thaumichorizons.common.tiles.TileSoulExtractor;
|
||||
|
||||
import thaumcraft.client.lib.UtilsFX;
|
||||
|
||||
public class GuiSoulExtractor extends GuiContainer {
|
||||
|
||||
TileSoulExtractor tile;
|
||||
|
||||
public GuiSoulExtractor(final InventoryPlayer player, final TileSoulExtractor tile) {
|
||||
super((Container) new ContainerSoulExtractor(player, tile));
|
||||
super(new ContainerSoulExtractor(player, tile));
|
||||
this.tile = tile;
|
||||
this.xSize = 175;
|
||||
this.ySize = 165;
|
||||
this.xSize = 176;
|
||||
this.ySize = 166;
|
||||
}
|
||||
|
||||
protected void drawGuiContainerBackgroundLayer(
|
||||
final float p_146976_1_, final int p_146976_2_, final int p_146976_3_) {
|
||||
protected void drawGuiContainerBackgroundLayer(final float p_146976_1_, final int p_146976_2_,
|
||||
final int p_146976_3_) {
|
||||
GL11.glPushMatrix();
|
||||
GL11.glEnable(3042);
|
||||
GL11.glEnable(GL11.GL_BLEND);
|
||||
UtilsFX.bindTexture(new ResourceLocation("thaumichorizons", "textures/gui/guisieve.png"));
|
||||
GL11.glColor4f(1.0f, 1.0f, 1.0f, 1.0f);
|
||||
final int var5 = (this.width - this.xSize) / 2;
|
||||
@@ -36,7 +39,7 @@ public class GuiSoulExtractor extends GuiContainer {
|
||||
final int i1 = this.tile.getTimeRemainingScaled(39);
|
||||
this.drawTexturedModalRect(var5 + 91, var6 + 58 - i1, 176, 166 - i1, 35, i1);
|
||||
}
|
||||
GL11.glDisable(3042);
|
||||
GL11.glDisable(GL11.GL_BLEND);
|
||||
GL11.glPopMatrix();
|
||||
}
|
||||
}
|
||||
@@ -4,37 +4,40 @@
|
||||
|
||||
package com.kentington.thaumichorizons.client.gui;
|
||||
|
||||
import com.kentington.thaumichorizons.common.container.ContainerSoulforge;
|
||||
import com.kentington.thaumichorizons.common.tiles.TileSoulforge;
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import net.minecraft.client.gui.inventory.GuiContainer;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.inventory.Container;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
|
||||
import org.lwjgl.opengl.GL11;
|
||||
|
||||
import com.kentington.thaumichorizons.common.container.ContainerSoulforge;
|
||||
import com.kentington.thaumichorizons.common.tiles.TileSoulforge;
|
||||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import thaumcraft.client.lib.UtilsFX;
|
||||
|
||||
@SideOnly(Side.CLIENT)
|
||||
public class GuiSoulforge extends GuiContainer {
|
||||
|
||||
TileSoulforge tile;
|
||||
|
||||
public GuiSoulforge(final EntityPlayer player, final TileSoulforge tile) {
|
||||
super((Container) new ContainerSoulforge(player, tile));
|
||||
super(new ContainerSoulforge(player, tile));
|
||||
this.xSize = 0;
|
||||
this.ySize = 0;
|
||||
}
|
||||
|
||||
protected void drawGuiContainerBackgroundLayer(
|
||||
final float p_146976_1_, final int p_146976_2_, final int p_146976_3_) {
|
||||
protected void drawGuiContainerBackgroundLayer(final float p_146976_1_, final int p_146976_2_,
|
||||
final int p_146976_3_) {
|
||||
GL11.glPushMatrix();
|
||||
GL11.glEnable(3042);
|
||||
GL11.glEnable(GL11.GL_BLEND);
|
||||
UtilsFX.bindTexture(new ResourceLocation("thaumichorizons", "textures/gui/guidynamo.png"));
|
||||
GL11.glColor4f(1.0f, 1.0f, 1.0f, 1.0f);
|
||||
final int var5 = (this.width - this.xSize) / 2;
|
||||
final int var6 = (this.height - this.ySize) / 2;
|
||||
this.drawTexturedModalRect(var5, var6, 0, 0, this.xSize, this.ySize);
|
||||
GL11.glDisable(3042);
|
||||
GL11.glDisable(GL11.GL_BLEND);
|
||||
GL11.glPopMatrix();
|
||||
}
|
||||
|
||||
|
||||
@@ -4,34 +4,37 @@
|
||||
|
||||
package com.kentington.thaumichorizons.client.gui;
|
||||
|
||||
import com.kentington.thaumichorizons.common.container.ContainerVat;
|
||||
import com.kentington.thaumichorizons.common.lib.EntityInfusionProperties;
|
||||
import com.kentington.thaumichorizons.common.tiles.TileVat;
|
||||
import net.minecraft.client.gui.inventory.GuiContainer;
|
||||
import net.minecraft.entity.EntityLivingBase;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.inventory.Container;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
|
||||
import org.lwjgl.opengl.GL11;
|
||||
|
||||
import com.kentington.thaumichorizons.common.container.ContainerVat;
|
||||
import com.kentington.thaumichorizons.common.lib.EntityInfusionProperties;
|
||||
import com.kentington.thaumichorizons.common.tiles.TileVat;
|
||||
|
||||
import thaumcraft.client.lib.UtilsFX;
|
||||
import thaumcraft.common.lib.research.ResearchManager;
|
||||
|
||||
public class GuiVat extends GuiContainer {
|
||||
|
||||
TileVat tile;
|
||||
EntityPlayer player;
|
||||
|
||||
public GuiVat(final EntityPlayer p, final TileVat t) {
|
||||
super((Container) new ContainerVat(p, t));
|
||||
super(new ContainerVat(p, t));
|
||||
this.tile = t;
|
||||
this.player = p;
|
||||
this.xSize = 176;
|
||||
this.ySize = 209;
|
||||
}
|
||||
|
||||
protected void drawGuiContainerBackgroundLayer(
|
||||
final float p_146976_1_, final int p_146976_2_, final int p_146976_3_) {
|
||||
protected void drawGuiContainerBackgroundLayer(final float p_146976_1_, final int p_146976_2_,
|
||||
final int p_146976_3_) {
|
||||
GL11.glPushMatrix();
|
||||
GL11.glEnable(3042);
|
||||
GL11.glEnable(GL11.GL_BLEND);
|
||||
UtilsFX.bindTexture(new ResourceLocation("thaumichorizons", "textures/gui/guivat.png"));
|
||||
GL11.glColor4f(1.0f, 1.0f, 1.0f, 1.0f);
|
||||
final int var5 = (this.width - this.xSize) / 2;
|
||||
@@ -42,42 +45,43 @@ public class GuiVat extends GuiContainer {
|
||||
}
|
||||
if (this.tile.getEntity() != null) {
|
||||
final EntityLivingBase critter = this.tile.getEntity();
|
||||
final float health = critter.getHealth() / 2.0f;
|
||||
final float adjustedCritterHealth = critter.getHealth() / 2.0f;
|
||||
final float max = critter.getMaxHealth() / 2.0f;
|
||||
for (int i = 0; i < (int) max; ++i) {
|
||||
if (health >= i) {
|
||||
this.drawTexturedModalRect(
|
||||
var5 + 56 + 7 * i - 63 * (i / 9), var6 + 12 + 7 * (i / 9), 176, 126, 7, 6);
|
||||
int x = var5 + 56 + 7 * i - 63 * (i / 9);
|
||||
int y = var6 + 12 + 7 * (i / 9);
|
||||
int textureX = 176;
|
||||
int height = 6;
|
||||
if (adjustedCritterHealth >= i) {
|
||||
this.drawTexturedModalRect(x, y, textureX, 126, 7, height);
|
||||
} else {
|
||||
this.drawTexturedModalRect(
|
||||
var5 + 56 + 7 * i - 63 * (i / 9), var6 + 12 + 7 * (i / 9), 176, 120, 7, 6);
|
||||
if (health >= i - 0.5f) {
|
||||
this.drawTexturedModalRect(
|
||||
var5 + 56 + 7 * i - 63 * (i / 9), var6 + 12 + 7 * (i / 9), 176, 126, 4, 6);
|
||||
this.drawTexturedModalRect(x, y, textureX, 120, 7, height);
|
||||
if (adjustedCritterHealth >= i - 0.5f) {
|
||||
this.drawTexturedModalRect(x, y, textureX, 126, 4, height);
|
||||
}
|
||||
}
|
||||
}
|
||||
} else if (this.tile.mode == 4 || this.tile.mode == 2) {
|
||||
final float health2 = this.tile.selfInfusionHealth / 2.0f;
|
||||
final float adjustedSelfInfusionHealth = this.tile.selfInfusionHealth / 2.0f;
|
||||
final float max2 = 10.0f;
|
||||
for (int j = 0; j < (int) max2; ++j) {
|
||||
if (health2 >= j) {
|
||||
this.drawTexturedModalRect(
|
||||
var5 + 56 + 7 * j - 63 * (j / 9), var6 + 12 + 7 * (j / 9), 176, 126, 7, 6);
|
||||
int x = var5 + 56 + 7 * j - 63 * (j / 9);
|
||||
int y = var6 + 12 + 7 * (j / 9);
|
||||
int textureX = 176;
|
||||
int height = 6;
|
||||
if (adjustedSelfInfusionHealth >= j) {
|
||||
this.drawTexturedModalRect(x, y, textureX, 126, 7, height);
|
||||
} else {
|
||||
this.drawTexturedModalRect(
|
||||
var5 + 56 + 7 * j - 63 * (j / 9), var6 + 12 + 7 * (j / 9), 176, 120, 7, 6);
|
||||
if (health2 >= j - 0.5f) {
|
||||
this.drawTexturedModalRect(
|
||||
var5 + 56 + 7 * j - 63 * (j / 9), var6 + 12 + 7 * (j / 9), 176, 126, 4, 6);
|
||||
this.drawTexturedModalRect(x, y, textureX, 120, 7, height);
|
||||
if (adjustedSelfInfusionHealth >= j - 0.5f) {
|
||||
this.drawTexturedModalRect(x, y, textureX, 126, 4, height);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if (this.tile.getEntity() != null) {
|
||||
final int[] infusions = ((EntityInfusionProperties)
|
||||
this.tile.getEntity().getExtendedProperties("CreatureInfusion"))
|
||||
.getInfusions();
|
||||
final int[] infusions = ((EntityInfusionProperties) this.tile.getEntity()
|
||||
.getExtendedProperties("CreatureInfusion")).getInfusions();
|
||||
if (infusions[0] != 0) {
|
||||
GL11.glColor4f(1.0f, 1.0f, 1.0f, 1.0f);
|
||||
for (int k = 0; k < 12; ++k) {
|
||||
@@ -85,7 +89,12 @@ public class GuiVat extends GuiContainer {
|
||||
break;
|
||||
}
|
||||
this.drawTexturedModalRect(
|
||||
var5 + 55 + 16 * (k % 4), var6 + 56 + 17 * (k / 4), (infusions[k] - 1) * 16, 209, 16, 16);
|
||||
var5 + 55 + 16 * (k % 4),
|
||||
var6 + 56 + 17 * (k / 4),
|
||||
(infusions[k] - 1) * 16,
|
||||
209,
|
||||
16,
|
||||
16);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -97,10 +106,15 @@ public class GuiVat extends GuiContainer {
|
||||
break;
|
||||
}
|
||||
this.drawTexturedModalRect(
|
||||
var5 + 55 + 16 * (k % 4), var6 + 56 + 17 * (k / 4), (infusions[k] - 1) * 16, 225, 16, 16);
|
||||
var5 + 55 + 16 * (k % 4),
|
||||
var6 + 56 + 17 * (k / 4),
|
||||
(infusions[k] - 1) * 16,
|
||||
225,
|
||||
16,
|
||||
16);
|
||||
}
|
||||
}
|
||||
GL11.glDisable(3042);
|
||||
GL11.glDisable(GL11.GL_BLEND);
|
||||
GL11.glPopMatrix();
|
||||
}
|
||||
|
||||
|
||||
@@ -4,17 +4,20 @@
|
||||
|
||||
package com.kentington.thaumichorizons.client.gui;
|
||||
|
||||
import com.kentington.thaumichorizons.common.container.ContainerVisDynamo;
|
||||
import com.kentington.thaumichorizons.common.tiles.TileVisDynamo;
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import java.awt.Color;
|
||||
|
||||
import net.minecraft.client.gui.inventory.GuiContainer;
|
||||
import net.minecraft.client.renderer.Tessellator;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.inventory.Container;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
|
||||
import org.lwjgl.opengl.GL11;
|
||||
|
||||
import com.kentington.thaumichorizons.common.container.ContainerVisDynamo;
|
||||
import com.kentington.thaumichorizons.common.tiles.TileVisDynamo;
|
||||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import thaumcraft.api.aspects.Aspect;
|
||||
import thaumcraft.client.fx.ParticleEngine;
|
||||
import thaumcraft.client.lib.UtilsFX;
|
||||
@@ -22,6 +25,7 @@ import thaumcraft.common.config.Config;
|
||||
|
||||
@SideOnly(Side.CLIENT)
|
||||
public class GuiVisDynamo extends GuiContainer {
|
||||
|
||||
TileVisDynamo tile;
|
||||
int flashX;
|
||||
int flashY;
|
||||
@@ -29,7 +33,7 @@ public class GuiVisDynamo extends GuiContainer {
|
||||
int flashTimer;
|
||||
|
||||
public GuiVisDynamo(final EntityPlayer player, final TileVisDynamo tileEntity) {
|
||||
super((Container) new ContainerVisDynamo(player, tileEntity));
|
||||
super(new ContainerVisDynamo(player, tileEntity));
|
||||
this.flashColor = null;
|
||||
this.flashTimer = 0;
|
||||
this.tile = tileEntity;
|
||||
@@ -39,47 +43,23 @@ public class GuiVisDynamo extends GuiContainer {
|
||||
|
||||
protected void drawGuiContainerBackgroundLayer(final float par1, final int par2, final int par3) {
|
||||
GL11.glPushMatrix();
|
||||
GL11.glEnable(3042);
|
||||
GL11.glEnable(GL11.GL_BLEND);
|
||||
UtilsFX.bindTexture(new ResourceLocation("thaumichorizons", "textures/gui/guidynamo.png"));
|
||||
GL11.glColor4f(1.0f, 1.0f, 1.0f, 1.0f);
|
||||
final int var5 = (this.width - this.xSize) / 2;
|
||||
final int var6 = (this.height - this.ySize) / 2;
|
||||
this.drawTexturedModalRect(var5, var6, 0, 0, this.xSize, this.ySize);
|
||||
GL11.glDisable(3042);
|
||||
GL11.glDisable(GL11.GL_BLEND);
|
||||
GL11.glPopMatrix();
|
||||
}
|
||||
|
||||
protected void drawGuiContainerForegroundLayer(final int par1, final int par2) {
|
||||
if (this.tile.provideAer) {
|
||||
UtilsFX.drawTag(11, 12, Aspect.AIR, 0.0f, 0, (double) this.zLevel, 771, 1.0f, false);
|
||||
} else {
|
||||
UtilsFX.drawTag(11, 12, Aspect.AIR, 0.0f, 0, (double) this.zLevel, 771, 1.0f, true);
|
||||
}
|
||||
if (this.tile.provideTerra) {
|
||||
UtilsFX.drawTag(83, 11, Aspect.EARTH, 0.0f, 0, (double) this.zLevel, 771, 1.0f, false);
|
||||
} else {
|
||||
UtilsFX.drawTag(83, 11, Aspect.EARTH, 0.0f, 0, (double) this.zLevel, 771, 1.0f, true);
|
||||
}
|
||||
if (this.tile.provideIgnis) {
|
||||
UtilsFX.drawTag(11, 45, Aspect.FIRE, 0.0f, 0, (double) this.zLevel, 771, 1.0f, false);
|
||||
} else {
|
||||
UtilsFX.drawTag(11, 45, Aspect.FIRE, 0.0f, 0, (double) this.zLevel, 771, 1.0f, true);
|
||||
}
|
||||
if (this.tile.provideAqua) {
|
||||
UtilsFX.drawTag(83, 45, Aspect.WATER, 0.0f, 0, (double) this.zLevel, 771, 1.0f, false);
|
||||
} else {
|
||||
UtilsFX.drawTag(83, 45, Aspect.WATER, 0.0f, 0, (double) this.zLevel, 771, 1.0f, true);
|
||||
}
|
||||
if (this.tile.provideOrdo) {
|
||||
UtilsFX.drawTag(11, 78, Aspect.ORDER, 0.0f, 0, (double) this.zLevel, 771, 1.0f, false);
|
||||
} else {
|
||||
UtilsFX.drawTag(11, 78, Aspect.ORDER, 0.0f, 0, (double) this.zLevel, 771, 1.0f, true);
|
||||
}
|
||||
if (this.tile.providePerditio) {
|
||||
UtilsFX.drawTag(83, 78, Aspect.ENTROPY, 0.0f, 0, (double) this.zLevel, 771, 1.0f, false);
|
||||
} else {
|
||||
UtilsFX.drawTag(83, 78, Aspect.ENTROPY, 0.0f, 0, (double) this.zLevel, 771, 1.0f, true);
|
||||
}
|
||||
UtilsFX.drawTag(11, 12, Aspect.AIR, 0.0f, 0, this.zLevel, 771, 1.0f, !this.tile.provideAer);
|
||||
UtilsFX.drawTag(83, 11, Aspect.EARTH, 0.0f, 0, this.zLevel, 771, 1.0f, !this.tile.provideTerra);
|
||||
UtilsFX.drawTag(11, 45, Aspect.FIRE, 0.0f, 0, this.zLevel, 771, 1.0f, !this.tile.provideIgnis);
|
||||
UtilsFX.drawTag(83, 45, Aspect.WATER, 0.0f, 0, this.zLevel, 771, 1.0f, !this.tile.provideAqua);
|
||||
UtilsFX.drawTag(11, 78, Aspect.ORDER, 0.0f, 0, this.zLevel, 771, 1.0f, !this.tile.provideOrdo);
|
||||
UtilsFX.drawTag(83, 78, Aspect.ENTROPY, 0.0f, 0, this.zLevel, 771, 1.0f, !this.tile.providePerditio);
|
||||
if (this.flashTimer > 0) {
|
||||
--this.flashTimer;
|
||||
this.drawFlash();
|
||||
@@ -214,7 +194,7 @@ public class GuiVisDynamo extends GuiContainer {
|
||||
GL11.glPushMatrix();
|
||||
UtilsFX.bindTexture(ParticleEngine.particleTexture);
|
||||
GL11.glColor4f(1.0f, 1.0f, 1.0f, 1.0f);
|
||||
GL11.glTranslated((double) this.flashX, (double) this.flashY, 0.0);
|
||||
GL11.glTranslated(this.flashX, this.flashY, 0.0);
|
||||
final Tessellator tessellator = Tessellator.instance;
|
||||
final int part = this.flashTimer;
|
||||
final float var8 = 0.5f + part / 8.0f;
|
||||
@@ -224,10 +204,10 @@ public class GuiVisDynamo extends GuiContainer {
|
||||
tessellator.startDrawingQuads();
|
||||
tessellator.setBrightness(240);
|
||||
tessellator.setColorRGBA_F(red, green, blue, 1.0f);
|
||||
tessellator.addVertexWithUV(0.0, 16.0, (double) this.zLevel, (double) var9, (double) var11);
|
||||
tessellator.addVertexWithUV(16.0, 16.0, (double) this.zLevel, (double) var9, (double) var10);
|
||||
tessellator.addVertexWithUV(16.0, 0.0, (double) this.zLevel, (double) var8, (double) var10);
|
||||
tessellator.addVertexWithUV(0.0, 0.0, (double) this.zLevel, (double) var8, (double) var11);
|
||||
tessellator.addVertexWithUV(0.0, 16.0, this.zLevel, var9, var11);
|
||||
tessellator.addVertexWithUV(16.0, 16.0, this.zLevel, var9, var10);
|
||||
tessellator.addVertexWithUV(16.0, 0.0, this.zLevel, var8, var10);
|
||||
tessellator.addVertexWithUV(0.0, 0.0, this.zLevel, var8, var11);
|
||||
tessellator.draw();
|
||||
GL11.glPopMatrix();
|
||||
}
|
||||
|
||||
@@ -4,14 +4,14 @@
|
||||
|
||||
package com.kentington.thaumichorizons.client.lib;
|
||||
|
||||
import com.kentington.thaumichorizons.common.ThaumicHorizons;
|
||||
import com.kentington.thaumichorizons.common.blocks.BlockChocolate;
|
||||
import java.awt.Graphics2D;
|
||||
import java.awt.Image;
|
||||
import java.awt.image.BufferedImage;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
|
||||
import javax.imageio.ImageIO;
|
||||
|
||||
import net.minecraft.client.Minecraft;
|
||||
import net.minecraft.client.renderer.texture.AbstractTexture;
|
||||
import net.minecraft.client.renderer.texture.TextureMap;
|
||||
@@ -21,7 +21,11 @@ import net.minecraft.client.resources.IResourceManager;
|
||||
import net.minecraft.util.IIcon;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
|
||||
import com.kentington.thaumichorizons.common.ThaumicHorizons;
|
||||
import com.kentington.thaumichorizons.common.blocks.BlockChocolate;
|
||||
|
||||
public class GolemTHTexture extends AbstractTexture {
|
||||
|
||||
IIcon[] icons;
|
||||
IResourceManager manager;
|
||||
BufferedImage myImage;
|
||||
@@ -130,7 +134,7 @@ public class GolemTHTexture extends AbstractTexture {
|
||||
this.myImage.setRGB(53, 5, 6, 16, tmp.getRGB(0, 0, 6, 16, null, 0, 6), 0, 6);
|
||||
tmp = this.resize(south, 4, 25);
|
||||
this.myImage.setRGB(76, 27, 4, 25, tmp.getRGB(0, 0, 4, 25, null, 0, 4), 0, 4);
|
||||
final int[] eyeOverlay = {-16777216, -16316917, -16185587, -15593446};
|
||||
final int[] eyeOverlay = { -16777216, -16316917, -16185587, -15593446 };
|
||||
this.myImage.setRGB(9, 12, 2, 2, eyeOverlay, 0, 2);
|
||||
this.myImage.setRGB(13, 12, 2, 2, eyeOverlay, 0, 2);
|
||||
TextureUtil.uploadTextureImageAllocate(this.getGlTextureId(), this.myImage, false, false);
|
||||
|
||||
@@ -4,35 +4,20 @@
|
||||
|
||||
package com.kentington.thaumichorizons.client.lib;
|
||||
|
||||
import baubles.api.BaublesApi;
|
||||
import com.kentington.thaumichorizons.common.ThaumicHorizons;
|
||||
import com.kentington.thaumichorizons.common.entities.EntityBoatThaumium;
|
||||
import com.kentington.thaumichorizons.common.items.lenses.ILens;
|
||||
import com.kentington.thaumichorizons.common.items.lenses.ItemLensCase;
|
||||
import com.kentington.thaumichorizons.common.items.lenses.LensManager;
|
||||
import com.kentington.thaumichorizons.common.lib.THKeyHandler;
|
||||
import com.kentington.thaumichorizons.common.lib.networking.PacketHandler;
|
||||
import com.kentington.thaumichorizons.common.lib.networking.PacketLensChangeToServer;
|
||||
import cpw.mods.fml.common.eventhandler.SubscribeEvent;
|
||||
import cpw.mods.fml.common.gameevent.TickEvent;
|
||||
import cpw.mods.fml.common.network.simpleimpl.IMessage;
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.TreeMap;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.block.material.Material;
|
||||
import net.minecraft.client.Minecraft;
|
||||
import net.minecraft.client.renderer.RenderHelper;
|
||||
import net.minecraft.client.renderer.entity.RenderItem;
|
||||
import net.minecraft.entity.Entity;
|
||||
import net.minecraft.entity.EntityLivingBase;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.inventory.IInventory;
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.network.Packet;
|
||||
import net.minecraft.network.play.client.C07PacketPlayerDigging;
|
||||
import net.minecraft.potion.Potion;
|
||||
import net.minecraft.util.MathHelper;
|
||||
@@ -41,14 +26,33 @@ import net.minecraftforge.client.event.RenderBlockOverlayEvent;
|
||||
import net.minecraftforge.client.event.RenderGameOverlayEvent;
|
||||
import net.minecraftforge.client.event.RenderWorldLastEvent;
|
||||
import net.minecraftforge.common.util.ForgeDirection;
|
||||
|
||||
import org.lwjgl.input.Mouse;
|
||||
import org.lwjgl.opengl.Display;
|
||||
import org.lwjgl.opengl.GL11;
|
||||
import org.lwjgl.opengl.GL12;
|
||||
|
||||
import com.kentington.thaumichorizons.common.ThaumicHorizons;
|
||||
import com.kentington.thaumichorizons.common.entities.EntityBoatThaumium;
|
||||
import com.kentington.thaumichorizons.common.items.lenses.ILens;
|
||||
import com.kentington.thaumichorizons.common.items.lenses.ItemLensCase;
|
||||
import com.kentington.thaumichorizons.common.items.lenses.ItemLensFire;
|
||||
import com.kentington.thaumichorizons.common.items.lenses.LensManager;
|
||||
import com.kentington.thaumichorizons.common.lib.THKeyHandler;
|
||||
import com.kentington.thaumichorizons.common.lib.networking.PacketHandler;
|
||||
import com.kentington.thaumichorizons.common.lib.networking.PacketLensChangeToServer;
|
||||
|
||||
import baubles.api.BaublesApi;
|
||||
import cpw.mods.fml.common.eventhandler.SubscribeEvent;
|
||||
import cpw.mods.fml.common.gameevent.TickEvent;
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import thaumcraft.api.nodes.IRevealer;
|
||||
import thaumcraft.client.lib.UtilsFX;
|
||||
import thaumcraft.common.Thaumcraft;
|
||||
|
||||
public class RenderEventHandler {
|
||||
|
||||
static float radialHudScale;
|
||||
TreeMap<String, Integer> foci;
|
||||
HashMap<String, ItemStack> fociItem;
|
||||
@@ -67,10 +71,10 @@ public class RenderEventHandler {
|
||||
public ArrayList<EntityLivingBase> thingsThatSparkle;
|
||||
|
||||
public RenderEventHandler() {
|
||||
this.foci = new TreeMap<String, Integer>();
|
||||
this.fociItem = new HashMap<String, ItemStack>();
|
||||
this.fociHover = new HashMap<String, Boolean>();
|
||||
this.fociScale = new HashMap<String, Float>();
|
||||
this.foci = new TreeMap<>();
|
||||
this.fociItem = new HashMap<>();
|
||||
this.fociHover = new HashMap<>();
|
||||
this.fociScale = new HashMap<>();
|
||||
this.lastTime = 0L;
|
||||
this.lastState = false;
|
||||
this.breakProgress = 0.0f;
|
||||
@@ -80,7 +84,7 @@ public class RenderEventHandler {
|
||||
this.evanescentStage = 0;
|
||||
this.tempBlock = new Block[3][3];
|
||||
this.tempMD = new int[3][3];
|
||||
this.thingsThatSparkle = new ArrayList<EntityLivingBase>();
|
||||
this.thingsThatSparkle = new ArrayList<>();
|
||||
}
|
||||
|
||||
@SideOnly(Side.CLIENT)
|
||||
@@ -92,16 +96,13 @@ public class RenderEventHandler {
|
||||
this.handleFociRadial(mc, time, event);
|
||||
final ItemStack goggles = mc.thePlayer.inventory.armorItemInSlot(3);
|
||||
if (LensManager.nightVisionOffTime > 0L
|
||||
&& (goggles == null
|
||||
|| !(goggles.getItem() instanceof IRevealer)
|
||||
&& (goggles == null || !(goggles.getItem() instanceof IRevealer)
|
||||
|| goggles.stackTagCompound == null)
|
||||
&& mc.thePlayer.getActivePotionEffect(Potion.nightVision) != null
|
||||
&& mc.thePlayer.getActivePotionEffect(Potion.nightVision).getIsAmbient()) {
|
||||
&& ItemLensFire.isEffectGrantedByLens(mc.thePlayer.getActivePotionEffect(Potion.nightVision))) {
|
||||
mc.thePlayer.removePotionEffect(Potion.nightVision.id);
|
||||
LensManager.nightVisionOffTime = 0L;
|
||||
}
|
||||
if (goggles != null
|
||||
&& goggles.getItem() instanceof IRevealer
|
||||
if (goggles != null && goggles.getItem() instanceof IRevealer
|
||||
&& goggles.stackTagCompound != null
|
||||
&& goggles.stackTagCompound.getString("Lens") != null
|
||||
&& !goggles.stackTagCompound.getString("Lens").equals("")) {
|
||||
@@ -132,7 +133,7 @@ public class RenderEventHandler {
|
||||
this.fociScale.clear();
|
||||
int pouchcount = 0;
|
||||
ItemStack item = null;
|
||||
final IInventory baubles = BaublesApi.getBaubles((EntityPlayer) mc.thePlayer);
|
||||
final IInventory baubles = BaublesApi.getBaubles(mc.thePlayer);
|
||||
for (int a = 0; a < 4; ++a) {
|
||||
if (baubles.getStackInSlot(a) != null
|
||||
&& baubles.getStackInSlot(a).getItem() instanceof ItemLensCase) {
|
||||
@@ -193,8 +194,7 @@ public class RenderEventHandler {
|
||||
for (final String key : this.fociHover.keySet()) {
|
||||
if (this.fociHover.get(key)) {
|
||||
if (!THKeyHandler.radialActive && !THKeyHandler.radialLock) {
|
||||
PacketHandler.INSTANCE.sendToServer(
|
||||
(IMessage) new PacketLensChangeToServer((EntityPlayer) mc.thePlayer, key));
|
||||
PacketHandler.INSTANCE.sendToServer(new PacketLensChangeToServer(mc.thePlayer, key));
|
||||
THKeyHandler.radialLock = true;
|
||||
}
|
||||
if (this.fociScale.get(key) >= 1.3f) {
|
||||
@@ -246,14 +246,14 @@ public class RenderEventHandler {
|
||||
return;
|
||||
}
|
||||
GL11.glPushMatrix();
|
||||
GL11.glClear(256);
|
||||
GL11.glMatrixMode(5889);
|
||||
GL11.glClear(GL11.GL_DEPTH_BUFFER_BIT);
|
||||
GL11.glMatrixMode(GL11.GL_PROJECTION);
|
||||
GL11.glLoadIdentity();
|
||||
GL11.glOrtho(0.0, sw, sh, 0.0, 1000.0, 3000.0);
|
||||
GL11.glMatrixMode(5888);
|
||||
GL11.glMatrixMode(GL11.GL_MODELVIEW);
|
||||
GL11.glLoadIdentity();
|
||||
GL11.glTranslatef(0.0f, 0.0f, -2000.0f);
|
||||
GL11.glDisable(2929);
|
||||
GL11.glDisable(GL11.GL_DEPTH_TEST);
|
||||
GL11.glDepthMask(false);
|
||||
GL11.glPushMatrix();
|
||||
GL11.glTranslated(sw / 2.0, sh / 2.0, 0.0);
|
||||
@@ -262,34 +262,46 @@ public class RenderEventHandler {
|
||||
UtilsFX.bindTexture("textures/misc/radial.png");
|
||||
GL11.glPushMatrix();
|
||||
GL11.glRotatef(partialTicks + mc.thePlayer.ticksExisted % 720 / 2.0f, 0.0f, 0.0f, 1.0f);
|
||||
GL11.glAlphaFunc(516, 0.003921569f);
|
||||
GL11.glEnable(3042);
|
||||
GL11.glBlendFunc(770, 771);
|
||||
GL11.glAlphaFunc(GL11.GL_GREATER, 0.003921569f);
|
||||
GL11.glEnable(GL11.GL_BLEND);
|
||||
GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA);
|
||||
UtilsFX.renderQuadCenteredFromTexture(
|
||||
width * 2.75f * RenderEventHandler.radialHudScale, 0.5f, 0.5f, 0.5f, 200, 771, 0.5f);
|
||||
GL11.glDisable(3042);
|
||||
GL11.glAlphaFunc(516, 0.1f);
|
||||
width * 2.75f * RenderEventHandler.radialHudScale,
|
||||
0.5f,
|
||||
0.5f,
|
||||
0.5f,
|
||||
200,
|
||||
771,
|
||||
0.5f);
|
||||
GL11.glDisable(GL11.GL_BLEND);
|
||||
GL11.glAlphaFunc(GL11.GL_GREATER, 0.1f);
|
||||
GL11.glPopMatrix();
|
||||
UtilsFX.bindTexture("textures/misc/radial2.png");
|
||||
GL11.glPushMatrix();
|
||||
GL11.glRotatef(-(partialTicks + mc.thePlayer.ticksExisted % 720 / 2.0f), 0.0f, 0.0f, 1.0f);
|
||||
GL11.glAlphaFunc(516, 0.003921569f);
|
||||
GL11.glEnable(3042);
|
||||
GL11.glBlendFunc(770, 771);
|
||||
GL11.glAlphaFunc(GL11.GL_GREATER, 0.003921569f);
|
||||
GL11.glEnable(GL11.GL_BLEND);
|
||||
GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA);
|
||||
UtilsFX.renderQuadCenteredFromTexture(
|
||||
width * 2.55f * RenderEventHandler.radialHudScale, 0.5f, 0.5f, 0.5f, 200, 771, 0.5f);
|
||||
GL11.glDisable(3042);
|
||||
GL11.glAlphaFunc(516, 0.1f);
|
||||
width * 2.55f * RenderEventHandler.radialHudScale,
|
||||
0.5f,
|
||||
0.5f,
|
||||
0.5f,
|
||||
200,
|
||||
771,
|
||||
0.5f);
|
||||
GL11.glDisable(GL11.GL_BLEND);
|
||||
GL11.glAlphaFunc(GL11.GL_GREATER, 0.1f);
|
||||
GL11.glPopMatrix();
|
||||
if (lens != null) {
|
||||
GL11.glPushMatrix();
|
||||
GL11.glEnable(32826);
|
||||
GL11.glEnable(GL12.GL_RESCALE_NORMAL);
|
||||
RenderHelper.enableGUIStandardItemLighting();
|
||||
final ItemStack item = new ItemStack((Item) lens);
|
||||
item.stackTagCompound = null;
|
||||
ri.renderItemIntoGUI(mc.fontRenderer, mc.renderEngine, item, -8, -8);
|
||||
RenderHelper.disableStandardItemLighting();
|
||||
GL11.glDisable(32826);
|
||||
GL11.glDisable(GL12.GL_RESCALE_NORMAL);
|
||||
GL11.glPopMatrix();
|
||||
final int mx = (int) (i - sw / 2.0);
|
||||
final int my = (int) (j - sh / 2.0);
|
||||
@@ -297,26 +309,27 @@ public class RenderEventHandler {
|
||||
tt = new ItemStack((Item) lens);
|
||||
}
|
||||
}
|
||||
GL11.glScaled((double) RenderEventHandler.radialHudScale, (double) RenderEventHandler.radialHudScale, (double)
|
||||
GL11.glScaled(
|
||||
RenderEventHandler.radialHudScale,
|
||||
RenderEventHandler.radialHudScale,
|
||||
RenderEventHandler.radialHudScale);
|
||||
float currentRot = -90.0f * RenderEventHandler.radialHudScale;
|
||||
final float pieSlice = 360.0f / this.fociItem.size();
|
||||
String key = this.foci.firstKey();
|
||||
for (int a = 0; a < this.fociItem.size(); ++a) {
|
||||
final double xx = MathHelper.cos(currentRot / 180.0f * 3.141593f) * width;
|
||||
final double yy = MathHelper.sin(currentRot / 180.0f * 3.141593f) * width;
|
||||
final double xx = MathHelper.cos(currentRot / 180.0f * (float) Math.PI) * width;
|
||||
final double yy = MathHelper.sin(currentRot / 180.0f * (float) Math.PI) * width;
|
||||
currentRot += pieSlice;
|
||||
GL11.glPushMatrix();
|
||||
GL11.glTranslated(xx, yy, 100.0);
|
||||
GL11.glScalef(
|
||||
(float) this.fociScale.get(key), (float) this.fociScale.get(key), (float) this.fociScale.get(key));
|
||||
GL11.glEnable(32826);
|
||||
GL11.glScalef(this.fociScale.get(key), this.fociScale.get(key), this.fociScale.get(key));
|
||||
GL11.glEnable(GL12.GL_RESCALE_NORMAL);
|
||||
RenderHelper.enableGUIStandardItemLighting();
|
||||
final ItemStack item2 = this.fociItem.get(key).copy();
|
||||
item2.stackTagCompound = null;
|
||||
ri.renderItemIntoGUI(mc.fontRenderer, mc.renderEngine, item2, -8, -8);
|
||||
RenderHelper.disableStandardItemLighting();
|
||||
GL11.glDisable(32826);
|
||||
GL11.glDisable(GL12.GL_RESCALE_NORMAL);
|
||||
GL11.glPopMatrix();
|
||||
if (!THKeyHandler.radialLock && THKeyHandler.radialActive) {
|
||||
final int mx2 = (int) (i - sw / 2.0 - xx);
|
||||
@@ -327,8 +340,7 @@ public class RenderEventHandler {
|
||||
if (k == 0) {
|
||||
THKeyHandler.radialActive = false;
|
||||
THKeyHandler.radialLock = true;
|
||||
PacketHandler.INSTANCE.sendToServer(
|
||||
(IMessage) new PacketLensChangeToServer((EntityPlayer) mc.thePlayer, key));
|
||||
PacketHandler.INSTANCE.sendToServer(new PacketLensChangeToServer(mc.thePlayer, key));
|
||||
break;
|
||||
}
|
||||
} else {
|
||||
@@ -343,14 +355,14 @@ public class RenderEventHandler {
|
||||
mc.currentScreen,
|
||||
ri,
|
||||
mc.fontRenderer,
|
||||
tt.getTooltip((EntityPlayer) mc.thePlayer, mc.gameSettings.advancedItemTooltips),
|
||||
tt.getTooltip(mc.thePlayer, mc.gameSettings.advancedItemTooltips),
|
||||
-4,
|
||||
20,
|
||||
11);
|
||||
}
|
||||
GL11.glDepthMask(true);
|
||||
GL11.glEnable(2929);
|
||||
GL11.glDisable(3042);
|
||||
GL11.glEnable(GL11.GL_DEPTH_TEST);
|
||||
GL11.glDisable(GL11.GL_BLEND);
|
||||
GL11.glColor4f(1.0f, 1.0f, 1.0f, 1.0f);
|
||||
GL11.glPopMatrix();
|
||||
}
|
||||
@@ -365,45 +377,40 @@ public class RenderEventHandler {
|
||||
&& !goggles.stackTagCompound.getString("Lens").equals("")) {
|
||||
final ILens theLens = (ILens) LensManager.getLens(goggles.stackTagCompound.getString("Lens"));
|
||||
if (theLens == ThaumicHorizons.itemLensEarth) {
|
||||
if (this.cacheX != event.target.blockX
|
||||
|| this.cacheY != event.target.blockY
|
||||
if (this.cacheX != event.target.blockX || this.cacheY != event.target.blockY
|
||||
|| this.cacheZ != event.target.blockZ
|
||||
|| this.tempDir != ForgeDirection.getOrientation(event.target.sideHit)) {
|
||||
this.resetBlocks((EntityPlayer) mc.thePlayer);
|
||||
this.resetBlocks(mc.thePlayer);
|
||||
}
|
||||
if (event.player
|
||||
.worldObj
|
||||
.getBlock(event.target.blockX, event.target.blockY, event.target.blockZ)
|
||||
.getMaterial()
|
||||
!= Material.air) {
|
||||
if (event.player.worldObj.getBlock(event.target.blockX, event.target.blockY, event.target.blockZ)
|
||||
.getMaterial() != Material.air) {
|
||||
this.cacheX = event.target.blockX;
|
||||
this.cacheY = event.target.blockY;
|
||||
this.cacheZ = event.target.blockZ;
|
||||
this.tempDir = ForgeDirection.getOrientation(event.target.sideHit);
|
||||
} else {
|
||||
this.resetBlocks((EntityPlayer) mc.thePlayer);
|
||||
this.resetBlocks(mc.thePlayer);
|
||||
}
|
||||
} else {
|
||||
this.resetBlocks((EntityPlayer) mc.thePlayer);
|
||||
this.resetBlocks(mc.thePlayer);
|
||||
}
|
||||
} else {
|
||||
this.resetBlocks((EntityPlayer) mc.thePlayer);
|
||||
this.resetBlocks(mc.thePlayer);
|
||||
}
|
||||
} else if (this.evanescentStage != 0) {
|
||||
this.resetBlocks((EntityPlayer) mc.thePlayer);
|
||||
this.resetBlocks(mc.thePlayer);
|
||||
}
|
||||
}
|
||||
|
||||
void setBlocksEvanescent(final EntityPlayer p) {
|
||||
if (p.isSwingInProgress) {
|
||||
this.breakProgress += p.worldObj
|
||||
.getBlock(this.cacheX, this.cacheY, this.cacheZ)
|
||||
this.breakProgress += p.worldObj.getBlock(this.cacheX, this.cacheY, this.cacheZ)
|
||||
.getPlayerRelativeBlockHardness(p, p.worldObj, this.cacheX, this.cacheY, this.cacheZ);
|
||||
if (this.breakProgress > 1.0f) {
|
||||
Minecraft.getMinecraft().getNetHandler().addToSendQueue((Packet)
|
||||
Minecraft.getMinecraft().getNetHandler().addToSendQueue(
|
||||
new C07PacketPlayerDigging(2, p.getEntityId(), this.cacheX, this.cacheY, this.cacheZ));
|
||||
Minecraft.getMinecraft()
|
||||
.playerController
|
||||
// TODO: is it correct? X, Y, and Z are passed not as usually expected.
|
||||
Minecraft.getMinecraft().playerController
|
||||
.onPlayerDestroyBlock(p.getEntityId(), this.cacheX, this.cacheY, this.cacheZ);
|
||||
this.breakProgress = 0.0f;
|
||||
return;
|
||||
@@ -413,81 +420,76 @@ public class RenderEventHandler {
|
||||
for (int j = -1; j < 2; ++j) {
|
||||
if (this.tempDir == ForgeDirection.UP || this.tempDir == ForgeDirection.DOWN) {
|
||||
if (p.worldObj.getTileEntity(this.cacheX + i, this.cacheY, this.cacheZ + j) == null
|
||||
&& p.worldObj
|
||||
.getBlock(this.cacheX + i, this.cacheY, this.cacheZ + j)
|
||||
.getLightValue()
|
||||
== 0
|
||||
&& p.worldObj
|
||||
.getBlock(this.cacheX + i, this.cacheY, this.cacheZ + j)
|
||||
.canCollideCheck(
|
||||
p.worldObj.getBlockMetadata(this.cacheX + i, this.cacheY, this.cacheZ + j),
|
||||
false)) {
|
||||
&& p.worldObj.getBlock(this.cacheX + i, this.cacheY, this.cacheZ + j).getLightValue() == 0
|
||||
&& p.worldObj.getBlock(this.cacheX + i, this.cacheY, this.cacheZ + j).canCollideCheck(
|
||||
p.worldObj.getBlockMetadata(this.cacheX + i, this.cacheY, this.cacheZ + j),
|
||||
false)) {
|
||||
if (p.worldObj.getBlock(this.cacheX + i, this.cacheY, this.cacheZ + j)
|
||||
!= ThaumicHorizons.blockEvanescent) {
|
||||
this.tempBlock[i + 1][j + 1] =
|
||||
p.worldObj.getBlock(this.cacheX + i, this.cacheY, this.cacheZ + j);
|
||||
this.tempMD[i + 1][j + 1] =
|
||||
p.worldObj.getBlockMetadata(this.cacheX + i, this.cacheY, this.cacheZ + j);
|
||||
this.tempBlock[i + 1][j + 1] = p.worldObj
|
||||
.getBlock(this.cacheX + i, this.cacheY, this.cacheZ + j);
|
||||
this.tempMD[i + 1][j + 1] = p.worldObj
|
||||
.getBlockMetadata(this.cacheX + i, this.cacheY, this.cacheZ + j);
|
||||
}
|
||||
if (this.tempBlock[i + 1][j + 1].getMaterial() != Material.air) {
|
||||
p.worldObj.setBlock(
|
||||
this.cacheX + i, this.cacheY, this.cacheZ + j, ThaumicHorizons.blockEvanescent);
|
||||
this.cacheX + i,
|
||||
this.cacheY,
|
||||
this.cacheZ + j,
|
||||
ThaumicHorizons.blockEvanescent);
|
||||
}
|
||||
} else if (p.worldObj.getBlock(this.cacheX + i, this.cacheY, this.cacheZ + j)
|
||||
!= ThaumicHorizons.blockEvanescent) {
|
||||
this.tempBlock[i + 1][j + 1] = null;
|
||||
}
|
||||
this.tempBlock[i + 1][j + 1] = null;
|
||||
}
|
||||
} else if (this.tempDir == ForgeDirection.NORTH || this.tempDir == ForgeDirection.SOUTH) {
|
||||
if (p.worldObj.getTileEntity(this.cacheX + i, this.cacheY + j, this.cacheZ) == null
|
||||
&& p.worldObj
|
||||
.getBlock(this.cacheX + i, this.cacheY + j, this.cacheZ)
|
||||
.getLightValue()
|
||||
== 0
|
||||
&& p.worldObj
|
||||
.getBlock(this.cacheX + i, this.cacheY + j, this.cacheZ)
|
||||
.canCollideCheck(
|
||||
p.worldObj.getBlockMetadata(this.cacheX + i, this.cacheY + j, this.cacheZ),
|
||||
false)) {
|
||||
&& p.worldObj.getBlock(this.cacheX + i, this.cacheY + j, this.cacheZ).getLightValue() == 0
|
||||
&& p.worldObj.getBlock(this.cacheX + i, this.cacheY + j, this.cacheZ).canCollideCheck(
|
||||
p.worldObj.getBlockMetadata(this.cacheX + i, this.cacheY + j, this.cacheZ),
|
||||
false)) {
|
||||
if (p.worldObj.getBlock(this.cacheX + i, this.cacheY + j, this.cacheZ)
|
||||
!= ThaumicHorizons.blockEvanescent) {
|
||||
this.tempBlock[i + 1][j + 1] =
|
||||
p.worldObj.getBlock(this.cacheX + i, this.cacheY + j, this.cacheZ);
|
||||
this.tempMD[i + 1][j + 1] =
|
||||
p.worldObj.getBlockMetadata(this.cacheX + i, this.cacheY + j, this.cacheZ);
|
||||
this.tempBlock[i + 1][j + 1] = p.worldObj
|
||||
.getBlock(this.cacheX + i, this.cacheY + j, this.cacheZ);
|
||||
this.tempMD[i + 1][j + 1] = p.worldObj
|
||||
.getBlockMetadata(this.cacheX + i, this.cacheY + j, this.cacheZ);
|
||||
}
|
||||
if (this.tempBlock[i + 1][j + 1].getMaterial() != Material.air) {
|
||||
p.worldObj.setBlock(
|
||||
this.cacheX + i, this.cacheY + j, this.cacheZ, ThaumicHorizons.blockEvanescent);
|
||||
this.cacheX + i,
|
||||
this.cacheY + j,
|
||||
this.cacheZ,
|
||||
ThaumicHorizons.blockEvanescent);
|
||||
}
|
||||
} else if (p.worldObj.getBlock(this.cacheX + i, this.cacheY + j, this.cacheZ)
|
||||
!= ThaumicHorizons.blockEvanescent) {
|
||||
this.tempBlock[i + 1][j + 1] = null;
|
||||
}
|
||||
this.tempBlock[i + 1][j + 1] = null;
|
||||
}
|
||||
} else if (p.worldObj.getTileEntity(this.cacheX, this.cacheY + j, this.cacheZ + i) == null
|
||||
&& p.worldObj
|
||||
.getBlock(this.cacheX, this.cacheY + j, this.cacheZ + i)
|
||||
.getLightValue()
|
||||
== 0
|
||||
&& p.worldObj
|
||||
.getBlock(this.cacheX, this.cacheY + j, this.cacheZ + i)
|
||||
.canCollideCheck(
|
||||
p.worldObj.getBlockMetadata(this.cacheX, this.cacheY + j, this.cacheZ + i),
|
||||
false)) {
|
||||
&& p.worldObj.getBlock(this.cacheX, this.cacheY + j, this.cacheZ + i).getLightValue() == 0
|
||||
&& p.worldObj.getBlock(this.cacheX, this.cacheY + j, this.cacheZ + i).canCollideCheck(
|
||||
p.worldObj.getBlockMetadata(this.cacheX, this.cacheY + j, this.cacheZ + i),
|
||||
false)) {
|
||||
if (p.worldObj.getBlock(this.cacheX, this.cacheY + j, this.cacheZ + i)
|
||||
!= ThaumicHorizons.blockEvanescent) {
|
||||
this.tempBlock[i + 1][j + 1] = p.worldObj
|
||||
.getBlock(this.cacheX, this.cacheY + j, this.cacheZ + i);
|
||||
this.tempMD[i + 1][j + 1] = p.worldObj
|
||||
.getBlockMetadata(this.cacheX, this.cacheY + j, this.cacheZ + i);
|
||||
}
|
||||
if (this.tempBlock[i + 1][j + 1].getMaterial() != Material.air) {
|
||||
p.worldObj.setBlock(
|
||||
this.cacheX,
|
||||
this.cacheY + j,
|
||||
this.cacheZ + i,
|
||||
ThaumicHorizons.blockEvanescent);
|
||||
}
|
||||
} else
|
||||
if (p.worldObj.getBlock(this.cacheX, this.cacheY + j, this.cacheZ + i)
|
||||
!= ThaumicHorizons.blockEvanescent) {
|
||||
this.tempBlock[i + 1][j + 1] =
|
||||
p.worldObj.getBlock(this.cacheX, this.cacheY + j, this.cacheZ + i);
|
||||
this.tempMD[i + 1][j + 1] =
|
||||
p.worldObj.getBlockMetadata(this.cacheX, this.cacheY + j, this.cacheZ + i);
|
||||
}
|
||||
if (this.tempBlock[i + 1][j + 1].getMaterial() != Material.air) {
|
||||
p.worldObj.setBlock(
|
||||
this.cacheX, this.cacheY + j, this.cacheZ + i, ThaumicHorizons.blockEvanescent);
|
||||
}
|
||||
} else if (p.worldObj.getBlock(this.cacheX, this.cacheY + j, this.cacheZ + i)
|
||||
!= ThaumicHorizons.blockEvanescent) {
|
||||
this.tempBlock[i + 1][j + 1] = null;
|
||||
}
|
||||
this.tempBlock[i + 1][j + 1] = null;
|
||||
}
|
||||
}
|
||||
}
|
||||
this.evanescentStage = 2;
|
||||
@@ -524,14 +526,14 @@ public class RenderEventHandler {
|
||||
} else if (this.tempBlock[i + 1][j + 1] != null
|
||||
&& p.worldObj.getBlock(this.cacheX, this.cacheY + j, this.cacheZ + i)
|
||||
== ThaumicHorizons.blockEvanescent) {
|
||||
p.worldObj.setBlock(
|
||||
this.cacheX,
|
||||
this.cacheY + j,
|
||||
this.cacheZ + i,
|
||||
this.tempBlock[i + 1][j + 1],
|
||||
this.tempMD[i + 1][j + 1],
|
||||
4);
|
||||
}
|
||||
p.worldObj.setBlock(
|
||||
this.cacheX,
|
||||
this.cacheY + j,
|
||||
this.cacheZ + i,
|
||||
this.tempBlock[i + 1][j + 1],
|
||||
this.tempMD[i + 1][j + 1],
|
||||
4);
|
||||
}
|
||||
}
|
||||
}
|
||||
this.tempBlock = new Block[3][3];
|
||||
@@ -546,14 +548,13 @@ public class RenderEventHandler {
|
||||
return;
|
||||
}
|
||||
final ItemStack goggles = mc.thePlayer.inventory.armorItemInSlot(3);
|
||||
if (goggles != null
|
||||
&& goggles.getItem() instanceof IRevealer
|
||||
if (goggles != null && goggles.getItem() instanceof IRevealer
|
||||
&& goggles.stackTagCompound != null
|
||||
&& goggles.stackTagCompound.getString("Lens") != null
|
||||
&& !goggles.stackTagCompound.getString("Lens").equals("")) {
|
||||
final ILens theLens = (ILens) LensManager.getLens(goggles.stackTagCompound.getString("Lens"));
|
||||
if (theLens == ThaumicHorizons.itemLensEarth) {
|
||||
this.setBlocksEvanescent((EntityPlayer) mc.thePlayer);
|
||||
this.setBlocksEvanescent(mc.thePlayer);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -562,7 +563,7 @@ public class RenderEventHandler {
|
||||
@SubscribeEvent
|
||||
public void renderLast(final RenderWorldLastEvent event) {
|
||||
for (final EntityLivingBase entity : this.thingsThatSparkle) {
|
||||
if (Minecraft.getMinecraft().thePlayer.getDistanceSqToEntity((Entity) entity) < 32.0
|
||||
if (Minecraft.getMinecraft().thePlayer.getDistanceSqToEntity(entity) < 32.0
|
||||
&& entity.worldObj.rand.nextFloat() > 0.95f) {
|
||||
final float angle = (float) (entity.worldObj.rand.nextFloat() * 2.0f * 3.141592653589793);
|
||||
Thaumcraft.proxy.sparkle(
|
||||
@@ -576,7 +577,7 @@ public class RenderEventHandler {
|
||||
}
|
||||
if (this.evanescentStage == 2) {
|
||||
final float temp = this.breakProgress;
|
||||
this.resetBlocks((EntityPlayer) Minecraft.getMinecraft().thePlayer);
|
||||
this.resetBlocks(Minecraft.getMinecraft().thePlayer);
|
||||
this.breakProgress = temp;
|
||||
}
|
||||
}
|
||||
@@ -586,8 +587,7 @@ public class RenderEventHandler {
|
||||
public void clearWater(final RenderBlockOverlayEvent event) {
|
||||
final Minecraft mc = Minecraft.getMinecraft();
|
||||
final ItemStack goggles = mc.thePlayer.inventory.armorItemInSlot(3);
|
||||
if (goggles != null
|
||||
&& goggles.getItem() instanceof IRevealer
|
||||
if (goggles != null && goggles.getItem() instanceof IRevealer
|
||||
&& goggles.stackTagCompound != null
|
||||
&& goggles.stackTagCompound.getString("Lens") != null
|
||||
&& !goggles.stackTagCompound.getString("Lens").equals("")) {
|
||||
@@ -597,7 +597,6 @@ public class RenderEventHandler {
|
||||
}
|
||||
}
|
||||
if (event.overlayType == RenderBlockOverlayEvent.OverlayType.FIRE
|
||||
&& mc.thePlayer.ridingEntity != null
|
||||
&& mc.thePlayer.ridingEntity instanceof EntityBoatThaumium) {
|
||||
event.setCanceled(true);
|
||||
}
|
||||
|
||||
+14
-16
@@ -4,38 +4,36 @@
|
||||
|
||||
package com.kentington.thaumichorizons.client.renderer.block;
|
||||
|
||||
import com.kentington.thaumichorizons.common.ThaumicHorizons;
|
||||
import com.kentington.thaumichorizons.common.tiles.TileBloodInfuser;
|
||||
import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler;
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.client.renderer.RenderBlocks;
|
||||
import net.minecraft.client.renderer.tileentity.TileEntityRendererDispatcher;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
import net.minecraft.world.IBlockAccess;
|
||||
|
||||
import org.lwjgl.opengl.GL11;
|
||||
import org.lwjgl.opengl.GL12;
|
||||
|
||||
import com.kentington.thaumichorizons.common.ThaumicHorizons;
|
||||
import com.kentington.thaumichorizons.common.tiles.TileBloodInfuser;
|
||||
|
||||
import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler;
|
||||
import thaumcraft.client.renderers.block.BlockRenderer;
|
||||
|
||||
public class BlockBloodInfuserRender extends BlockRenderer implements ISimpleBlockRenderingHandler {
|
||||
public void renderInventoryBlock(
|
||||
final Block block, final int metadata, final int modelID, final RenderBlocks renderer) {
|
||||
|
||||
public void renderInventoryBlock(final Block block, final int metadata, final int modelID,
|
||||
final RenderBlocks renderer) {
|
||||
GL11.glPushMatrix();
|
||||
GL11.glRotatef(90.0f, 0.0f, 1.0f, 0.0f);
|
||||
GL11.glTranslatef(-0.5f, -0.5f, -0.5f);
|
||||
final TileBloodInfuser tc = new TileBloodInfuser();
|
||||
tc.blockMetadata = metadata;
|
||||
TileEntityRendererDispatcher.instance.renderTileEntityAt((TileEntity) tc, 0.0, 0.0, 0.0, 0.0f);
|
||||
GL11.glEnable(32826);
|
||||
TileEntityRendererDispatcher.instance.renderTileEntityAt(tc, 0.0, 0.0, 0.0, 0.0f);
|
||||
GL11.glEnable(GL12.GL_RESCALE_NORMAL);
|
||||
GL11.glPopMatrix();
|
||||
}
|
||||
|
||||
public boolean renderWorldBlock(
|
||||
final IBlockAccess world,
|
||||
final int x,
|
||||
final int y,
|
||||
final int z,
|
||||
final Block block,
|
||||
final int modelId,
|
||||
final RenderBlocks renderer) {
|
||||
public boolean renderWorldBlock(final IBlockAccess world, final int x, final int y, final int z, final Block block,
|
||||
final int modelId, final RenderBlocks renderer) {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
+14
-16
@@ -4,38 +4,36 @@
|
||||
|
||||
package com.kentington.thaumichorizons.client.renderer.block;
|
||||
|
||||
import com.kentington.thaumichorizons.common.ThaumicHorizons;
|
||||
import com.kentington.thaumichorizons.common.tiles.TileEssentiaDynamo;
|
||||
import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler;
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.client.renderer.RenderBlocks;
|
||||
import net.minecraft.client.renderer.tileentity.TileEntityRendererDispatcher;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
import net.minecraft.world.IBlockAccess;
|
||||
|
||||
import org.lwjgl.opengl.GL11;
|
||||
import org.lwjgl.opengl.GL12;
|
||||
|
||||
import com.kentington.thaumichorizons.common.ThaumicHorizons;
|
||||
import com.kentington.thaumichorizons.common.tiles.TileEssentiaDynamo;
|
||||
|
||||
import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler;
|
||||
import thaumcraft.client.renderers.block.BlockRenderer;
|
||||
|
||||
public class BlockEssentiaDynamoRender extends BlockRenderer implements ISimpleBlockRenderingHandler {
|
||||
public void renderInventoryBlock(
|
||||
final Block block, final int metadata, final int modelID, final RenderBlocks renderer) {
|
||||
|
||||
public void renderInventoryBlock(final Block block, final int metadata, final int modelID,
|
||||
final RenderBlocks renderer) {
|
||||
GL11.glPushMatrix();
|
||||
GL11.glRotatef(90.0f, 0.0f, 1.0f, 0.0f);
|
||||
GL11.glTranslatef(-0.5f, -0.5f, -0.5f);
|
||||
final TileEssentiaDynamo tc = new TileEssentiaDynamo();
|
||||
tc.blockMetadata = metadata;
|
||||
TileEntityRendererDispatcher.instance.renderTileEntityAt((TileEntity) tc, 0.0, 0.0, 0.0, 0.0f);
|
||||
GL11.glEnable(32826);
|
||||
TileEntityRendererDispatcher.instance.renderTileEntityAt(tc, 0.0, 0.0, 0.0, 0.0f);
|
||||
GL11.glEnable(GL12.GL_RESCALE_NORMAL);
|
||||
GL11.glPopMatrix();
|
||||
}
|
||||
|
||||
public boolean renderWorldBlock(
|
||||
final IBlockAccess world,
|
||||
final int x,
|
||||
final int y,
|
||||
final int z,
|
||||
final Block block,
|
||||
final int modelId,
|
||||
final RenderBlocks renderer) {
|
||||
public boolean renderWorldBlock(final IBlockAccess world, final int x, final int y, final int z, final Block block,
|
||||
final int modelId, final RenderBlocks renderer) {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
+14
-16
@@ -4,38 +4,36 @@
|
||||
|
||||
package com.kentington.thaumichorizons.client.renderer.block;
|
||||
|
||||
import com.kentington.thaumichorizons.common.ThaumicHorizons;
|
||||
import com.kentington.thaumichorizons.common.tiles.TileInspiratron;
|
||||
import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler;
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.client.renderer.RenderBlocks;
|
||||
import net.minecraft.client.renderer.tileentity.TileEntityRendererDispatcher;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
import net.minecraft.world.IBlockAccess;
|
||||
|
||||
import org.lwjgl.opengl.GL11;
|
||||
import org.lwjgl.opengl.GL12;
|
||||
|
||||
import com.kentington.thaumichorizons.common.ThaumicHorizons;
|
||||
import com.kentington.thaumichorizons.common.tiles.TileInspiratron;
|
||||
|
||||
import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler;
|
||||
import thaumcraft.client.renderers.block.BlockRenderer;
|
||||
|
||||
public class BlockInspiratronRender extends BlockRenderer implements ISimpleBlockRenderingHandler {
|
||||
public void renderInventoryBlock(
|
||||
final Block block, final int metadata, final int modelID, final RenderBlocks renderer) {
|
||||
|
||||
public void renderInventoryBlock(final Block block, final int metadata, final int modelID,
|
||||
final RenderBlocks renderer) {
|
||||
GL11.glPushMatrix();
|
||||
GL11.glRotatef(90.0f, 0.0f, 1.0f, 0.0f);
|
||||
GL11.glTranslatef(-0.5f, -0.5f, -0.5f);
|
||||
final TileInspiratron tc = new TileInspiratron();
|
||||
tc.blockMetadata = metadata;
|
||||
TileEntityRendererDispatcher.instance.renderTileEntityAt((TileEntity) tc, 0.0, 0.0, 0.0, 0.0f);
|
||||
GL11.glEnable(32826);
|
||||
TileEntityRendererDispatcher.instance.renderTileEntityAt(tc, 0.0, 0.0, 0.0, 0.0f);
|
||||
GL11.glEnable(GL12.GL_RESCALE_NORMAL);
|
||||
GL11.glPopMatrix();
|
||||
}
|
||||
|
||||
public boolean renderWorldBlock(
|
||||
final IBlockAccess world,
|
||||
final int x,
|
||||
final int y,
|
||||
final int z,
|
||||
final Block block,
|
||||
final int modelId,
|
||||
final RenderBlocks renderer) {
|
||||
public boolean renderWorldBlock(final IBlockAccess world, final int x, final int y, final int z, final Block block,
|
||||
final int modelId, final RenderBlocks renderer) {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
+13
-15
@@ -4,24 +4,28 @@
|
||||
|
||||
package com.kentington.thaumichorizons.client.renderer.block;
|
||||
|
||||
import com.kentington.thaumichorizons.common.ThaumicHorizons;
|
||||
import com.kentington.thaumichorizons.common.blocks.BlockSoulJar;
|
||||
import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler;
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.client.Minecraft;
|
||||
import net.minecraft.client.renderer.RenderBlocks;
|
||||
import net.minecraft.client.renderer.texture.TextureMap;
|
||||
import net.minecraft.util.IIcon;
|
||||
import net.minecraft.world.IBlockAccess;
|
||||
|
||||
import org.lwjgl.opengl.GL11;
|
||||
|
||||
import com.kentington.thaumichorizons.common.ThaumicHorizons;
|
||||
import com.kentington.thaumichorizons.common.blocks.BlockSoulJar;
|
||||
|
||||
import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler;
|
||||
import thaumcraft.client.renderers.block.BlockRenderer;
|
||||
|
||||
public class BlockJarTHRenderer extends BlockRenderer implements ISimpleBlockRenderingHandler {
|
||||
public void renderInventoryBlock(
|
||||
final Block block, final int metadata, final int modelID, final RenderBlocks renderer) {
|
||||
|
||||
public void renderInventoryBlock(final Block block, final int metadata, final int modelID,
|
||||
final RenderBlocks renderer) {
|
||||
GL11.glPushMatrix();
|
||||
GL11.glEnable(3042);
|
||||
GL11.glBlendFunc(770, 771);
|
||||
GL11.glEnable(GL11.GL_BLEND);
|
||||
GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA);
|
||||
Minecraft.getMinecraft().renderEngine.bindTexture(TextureMap.locationBlocksTexture);
|
||||
final IIcon i1 = ((BlockSoulJar) block).iconJarTop;
|
||||
final IIcon i2 = ((BlockSoulJar) block).iconJarSide;
|
||||
@@ -46,14 +50,8 @@ public class BlockJarTHRenderer extends BlockRenderer implements ISimpleBlockRen
|
||||
GL11.glPopMatrix();
|
||||
}
|
||||
|
||||
public boolean renderWorldBlock(
|
||||
final IBlockAccess world,
|
||||
final int x,
|
||||
final int y,
|
||||
final int z,
|
||||
final Block block,
|
||||
final int modelId,
|
||||
final RenderBlocks renderer) {
|
||||
public boolean renderWorldBlock(final IBlockAccess world, final int x, final int y, final int z, final Block block,
|
||||
final int modelId, final RenderBlocks renderer) {
|
||||
final int bb = setBrightness(world, x, y, z, block);
|
||||
final int metadata = world.getBlockMetadata(x, y, z);
|
||||
block.setBlockBounds(
|
||||
|
||||
+14
-16
@@ -4,38 +4,36 @@
|
||||
|
||||
package com.kentington.thaumichorizons.client.renderer.block;
|
||||
|
||||
import com.kentington.thaumichorizons.common.ThaumicHorizons;
|
||||
import com.kentington.thaumichorizons.common.tiles.TileNodeMonitor;
|
||||
import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler;
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.client.renderer.RenderBlocks;
|
||||
import net.minecraft.client.renderer.tileentity.TileEntityRendererDispatcher;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
import net.minecraft.world.IBlockAccess;
|
||||
|
||||
import org.lwjgl.opengl.GL11;
|
||||
import org.lwjgl.opengl.GL12;
|
||||
|
||||
import com.kentington.thaumichorizons.common.ThaumicHorizons;
|
||||
import com.kentington.thaumichorizons.common.tiles.TileNodeMonitor;
|
||||
|
||||
import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler;
|
||||
import thaumcraft.client.renderers.block.BlockRenderer;
|
||||
|
||||
public class BlockNodeMonitorRender extends BlockRenderer implements ISimpleBlockRenderingHandler {
|
||||
public void renderInventoryBlock(
|
||||
final Block block, final int metadata, final int modelID, final RenderBlocks renderer) {
|
||||
|
||||
public void renderInventoryBlock(final Block block, final int metadata, final int modelID,
|
||||
final RenderBlocks renderer) {
|
||||
GL11.glPushMatrix();
|
||||
GL11.glRotatef(90.0f, 0.0f, 1.0f, 0.0f);
|
||||
GL11.glTranslatef(-0.5f, -0.5f, -0.5f);
|
||||
final TileNodeMonitor tc = new TileNodeMonitor();
|
||||
tc.blockMetadata = metadata;
|
||||
TileEntityRendererDispatcher.instance.renderTileEntityAt((TileEntity) tc, 0.0, 0.0, 0.0, 0.0f);
|
||||
GL11.glEnable(32826);
|
||||
TileEntityRendererDispatcher.instance.renderTileEntityAt(tc, 0.0, 0.0, 0.0, 0.0f);
|
||||
GL11.glEnable(GL12.GL_RESCALE_NORMAL);
|
||||
GL11.glPopMatrix();
|
||||
}
|
||||
|
||||
public boolean renderWorldBlock(
|
||||
final IBlockAccess world,
|
||||
final int x,
|
||||
final int y,
|
||||
final int z,
|
||||
final Block block,
|
||||
final int modelId,
|
||||
final RenderBlocks renderer) {
|
||||
public boolean renderWorldBlock(final IBlockAccess world, final int x, final int y, final int z, final Block block,
|
||||
final int modelId, final RenderBlocks renderer) {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
+14
-16
@@ -4,39 +4,37 @@
|
||||
|
||||
package com.kentington.thaumichorizons.client.renderer.block;
|
||||
|
||||
import com.kentington.thaumichorizons.common.ThaumicHorizons;
|
||||
import com.kentington.thaumichorizons.common.tiles.TileRecombinator;
|
||||
import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler;
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.client.renderer.RenderBlocks;
|
||||
import net.minecraft.client.renderer.tileentity.TileEntityRendererDispatcher;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
import net.minecraft.world.IBlockAccess;
|
||||
|
||||
import org.lwjgl.opengl.GL11;
|
||||
import org.lwjgl.opengl.GL12;
|
||||
|
||||
import com.kentington.thaumichorizons.common.ThaumicHorizons;
|
||||
import com.kentington.thaumichorizons.common.tiles.TileRecombinator;
|
||||
|
||||
import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler;
|
||||
import thaumcraft.client.renderers.block.BlockRenderer;
|
||||
|
||||
public class BlockRecombinatorRender extends BlockRenderer implements ISimpleBlockRenderingHandler {
|
||||
public void renderInventoryBlock(
|
||||
final Block block, final int metadata, final int modelID, final RenderBlocks renderer) {
|
||||
|
||||
public void renderInventoryBlock(final Block block, final int metadata, final int modelID,
|
||||
final RenderBlocks renderer) {
|
||||
GL11.glPushMatrix();
|
||||
GL11.glRotatef(90.0f, 0.0f, 1.0f, 0.0f);
|
||||
GL11.glTranslatef(-0.5f, -0.5f, -0.5f);
|
||||
final TileRecombinator tc = new TileRecombinator();
|
||||
tc.blockType = ThaumicHorizons.blockRecombinator;
|
||||
tc.blockMetadata = 0;
|
||||
TileEntityRendererDispatcher.instance.renderTileEntityAt((TileEntity) tc, 0.0, 0.0, 0.0, 0.0f);
|
||||
GL11.glEnable(32826);
|
||||
TileEntityRendererDispatcher.instance.renderTileEntityAt(tc, 0.0, 0.0, 0.0, 0.0f);
|
||||
GL11.glEnable(GL12.GL_RESCALE_NORMAL);
|
||||
GL11.glPopMatrix();
|
||||
}
|
||||
|
||||
public boolean renderWorldBlock(
|
||||
final IBlockAccess world,
|
||||
final int x,
|
||||
final int y,
|
||||
final int z,
|
||||
final Block block,
|
||||
final int modelId,
|
||||
final RenderBlocks renderer) {
|
||||
public boolean renderWorldBlock(final IBlockAccess world, final int x, final int y, final int z, final Block block,
|
||||
final int modelId, final RenderBlocks renderer) {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
+14
-16
@@ -4,39 +4,37 @@
|
||||
|
||||
package com.kentington.thaumichorizons.client.renderer.block;
|
||||
|
||||
import com.kentington.thaumichorizons.common.ThaumicHorizons;
|
||||
import com.kentington.thaumichorizons.common.tiles.TileSlot;
|
||||
import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler;
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.client.renderer.RenderBlocks;
|
||||
import net.minecraft.client.renderer.tileentity.TileEntityRendererDispatcher;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
import net.minecraft.world.IBlockAccess;
|
||||
|
||||
import org.lwjgl.opengl.GL11;
|
||||
import org.lwjgl.opengl.GL12;
|
||||
|
||||
import com.kentington.thaumichorizons.common.ThaumicHorizons;
|
||||
import com.kentington.thaumichorizons.common.tiles.TileSlot;
|
||||
|
||||
import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler;
|
||||
import thaumcraft.client.renderers.block.BlockRenderer;
|
||||
|
||||
public class BlockSlotRender extends BlockRenderer implements ISimpleBlockRenderingHandler {
|
||||
public void renderInventoryBlock(
|
||||
final Block block, final int metadata, final int modelId, final RenderBlocks renderer) {
|
||||
|
||||
public void renderInventoryBlock(final Block block, final int metadata, final int modelId,
|
||||
final RenderBlocks renderer) {
|
||||
GL11.glPushMatrix();
|
||||
GL11.glRotatef(90.0f, 0.0f, 1.0f, 0.0f);
|
||||
GL11.glTranslatef(-0.5f, -0.5f, -0.5f);
|
||||
final TileSlot tc = new TileSlot();
|
||||
tc.blockType = ThaumicHorizons.blockSlot;
|
||||
tc.blockMetadata = 0;
|
||||
TileEntityRendererDispatcher.instance.renderTileEntityAt((TileEntity) tc, 0.0, 0.0, 0.0, 0.0f);
|
||||
GL11.glEnable(32826);
|
||||
TileEntityRendererDispatcher.instance.renderTileEntityAt(tc, 0.0, 0.0, 0.0, 0.0f);
|
||||
GL11.glEnable(GL12.GL_RESCALE_NORMAL);
|
||||
GL11.glPopMatrix();
|
||||
}
|
||||
|
||||
public boolean renderWorldBlock(
|
||||
final IBlockAccess world,
|
||||
final int x,
|
||||
final int y,
|
||||
final int z,
|
||||
final Block block,
|
||||
final int modelId,
|
||||
final RenderBlocks renderer) {
|
||||
public boolean renderWorldBlock(final IBlockAccess world, final int x, final int y, final int z, final Block block,
|
||||
final int modelId, final RenderBlocks renderer) {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
+14
-16
@@ -4,38 +4,36 @@
|
||||
|
||||
package com.kentington.thaumichorizons.client.renderer.block;
|
||||
|
||||
import com.kentington.thaumichorizons.common.ThaumicHorizons;
|
||||
import com.kentington.thaumichorizons.common.tiles.TileSoulBeacon;
|
||||
import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler;
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.client.renderer.RenderBlocks;
|
||||
import net.minecraft.client.renderer.tileentity.TileEntityRendererDispatcher;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
import net.minecraft.world.IBlockAccess;
|
||||
|
||||
import org.lwjgl.opengl.GL11;
|
||||
import org.lwjgl.opengl.GL12;
|
||||
|
||||
import com.kentington.thaumichorizons.common.ThaumicHorizons;
|
||||
import com.kentington.thaumichorizons.common.tiles.TileSoulBeacon;
|
||||
|
||||
import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler;
|
||||
import thaumcraft.client.renderers.block.BlockRenderer;
|
||||
|
||||
public class BlockSoulBeaconRender extends BlockRenderer implements ISimpleBlockRenderingHandler {
|
||||
public void renderInventoryBlock(
|
||||
final Block block, final int metadata, final int modelID, final RenderBlocks renderer) {
|
||||
|
||||
public void renderInventoryBlock(final Block block, final int metadata, final int modelID,
|
||||
final RenderBlocks renderer) {
|
||||
GL11.glPushMatrix();
|
||||
GL11.glRotatef(90.0f, 0.0f, 1.0f, 0.0f);
|
||||
GL11.glTranslatef(-0.5f, -0.5f, -0.5f);
|
||||
final TileSoulBeacon tc = new TileSoulBeacon();
|
||||
tc.blockMetadata = metadata;
|
||||
TileEntityRendererDispatcher.instance.renderTileEntityAt((TileEntity) tc, 0.0, 0.0, 0.0, 0.0f);
|
||||
GL11.glEnable(32826);
|
||||
TileEntityRendererDispatcher.instance.renderTileEntityAt(tc, 0.0, 0.0, 0.0, 0.0f);
|
||||
GL11.glEnable(GL12.GL_RESCALE_NORMAL);
|
||||
GL11.glPopMatrix();
|
||||
}
|
||||
|
||||
public boolean renderWorldBlock(
|
||||
final IBlockAccess world,
|
||||
final int x,
|
||||
final int y,
|
||||
final int z,
|
||||
final Block block,
|
||||
final int modelId,
|
||||
final RenderBlocks renderer) {
|
||||
public boolean renderWorldBlock(final IBlockAccess world, final int x, final int y, final int z, final Block block,
|
||||
final int modelId, final RenderBlocks renderer) {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
+14
-16
@@ -4,38 +4,36 @@
|
||||
|
||||
package com.kentington.thaumichorizons.client.renderer.block;
|
||||
|
||||
import com.kentington.thaumichorizons.common.ThaumicHorizons;
|
||||
import com.kentington.thaumichorizons.common.tiles.TileSoulExtractor;
|
||||
import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler;
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.client.renderer.RenderBlocks;
|
||||
import net.minecraft.client.renderer.tileentity.TileEntityRendererDispatcher;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
import net.minecraft.world.IBlockAccess;
|
||||
|
||||
import org.lwjgl.opengl.GL11;
|
||||
import org.lwjgl.opengl.GL12;
|
||||
|
||||
import com.kentington.thaumichorizons.common.ThaumicHorizons;
|
||||
import com.kentington.thaumichorizons.common.tiles.TileSoulExtractor;
|
||||
|
||||
import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler;
|
||||
import thaumcraft.client.renderers.block.BlockRenderer;
|
||||
|
||||
public class BlockSoulSieveRender extends BlockRenderer implements ISimpleBlockRenderingHandler {
|
||||
public void renderInventoryBlock(
|
||||
final Block block, final int metadata, final int modelID, final RenderBlocks renderer) {
|
||||
|
||||
public void renderInventoryBlock(final Block block, final int metadata, final int modelID,
|
||||
final RenderBlocks renderer) {
|
||||
GL11.glPushMatrix();
|
||||
GL11.glRotatef(90.0f, 0.0f, 1.0f, 0.0f);
|
||||
GL11.glTranslatef(-0.5f, -0.5f, -0.5f);
|
||||
final TileSoulExtractor tc = new TileSoulExtractor();
|
||||
tc.blockMetadata = metadata;
|
||||
TileEntityRendererDispatcher.instance.renderTileEntityAt((TileEntity) tc, 0.0, 0.0, 0.0, 0.0f);
|
||||
GL11.glEnable(32826);
|
||||
TileEntityRendererDispatcher.instance.renderTileEntityAt(tc, 0.0, 0.0, 0.0, 0.0f);
|
||||
GL11.glEnable(GL12.GL_RESCALE_NORMAL);
|
||||
GL11.glPopMatrix();
|
||||
}
|
||||
|
||||
public boolean renderWorldBlock(
|
||||
final IBlockAccess world,
|
||||
final int x,
|
||||
final int y,
|
||||
final int z,
|
||||
final Block block,
|
||||
final int modelId,
|
||||
final RenderBlocks renderer) {
|
||||
public boolean renderWorldBlock(final IBlockAccess world, final int x, final int y, final int z, final Block block,
|
||||
final int modelId, final RenderBlocks renderer) {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
+14
-16
@@ -4,38 +4,36 @@
|
||||
|
||||
package com.kentington.thaumichorizons.client.renderer.block;
|
||||
|
||||
import com.kentington.thaumichorizons.common.ThaumicHorizons;
|
||||
import com.kentington.thaumichorizons.common.tiles.TileSoulforge;
|
||||
import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler;
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.client.renderer.RenderBlocks;
|
||||
import net.minecraft.client.renderer.tileentity.TileEntityRendererDispatcher;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
import net.minecraft.world.IBlockAccess;
|
||||
|
||||
import org.lwjgl.opengl.GL11;
|
||||
import org.lwjgl.opengl.GL12;
|
||||
|
||||
import com.kentington.thaumichorizons.common.ThaumicHorizons;
|
||||
import com.kentington.thaumichorizons.common.tiles.TileSoulforge;
|
||||
|
||||
import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler;
|
||||
import thaumcraft.client.renderers.block.BlockRenderer;
|
||||
|
||||
public class BlockSoulforgeRender extends BlockRenderer implements ISimpleBlockRenderingHandler {
|
||||
public void renderInventoryBlock(
|
||||
final Block block, final int metadata, final int modelID, final RenderBlocks renderer) {
|
||||
|
||||
public void renderInventoryBlock(final Block block, final int metadata, final int modelID,
|
||||
final RenderBlocks renderer) {
|
||||
GL11.glPushMatrix();
|
||||
GL11.glRotatef(90.0f, 0.0f, 1.0f, 0.0f);
|
||||
GL11.glTranslatef(-0.5f, -0.5f, -0.5f);
|
||||
final TileSoulforge tc = new TileSoulforge();
|
||||
tc.blockMetadata = metadata;
|
||||
TileEntityRendererDispatcher.instance.renderTileEntityAt((TileEntity) tc, 0.0, 0.0, 0.0, 0.0f);
|
||||
GL11.glEnable(32826);
|
||||
TileEntityRendererDispatcher.instance.renderTileEntityAt(tc, 0.0, 0.0, 0.0, 0.0f);
|
||||
GL11.glEnable(GL12.GL_RESCALE_NORMAL);
|
||||
GL11.glPopMatrix();
|
||||
}
|
||||
|
||||
public boolean renderWorldBlock(
|
||||
final IBlockAccess world,
|
||||
final int x,
|
||||
final int y,
|
||||
final int z,
|
||||
final Block block,
|
||||
final int modelId,
|
||||
final RenderBlocks renderer) {
|
||||
public boolean renderWorldBlock(final IBlockAccess world, final int x, final int y, final int z, final Block block,
|
||||
final int modelId, final RenderBlocks renderer) {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
+16
-20
@@ -4,46 +4,42 @@
|
||||
|
||||
package com.kentington.thaumichorizons.client.renderer.block;
|
||||
|
||||
import com.kentington.thaumichorizons.common.ThaumicHorizons;
|
||||
import com.kentington.thaumichorizons.common.tiles.TileSpike;
|
||||
import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler;
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.client.renderer.RenderBlocks;
|
||||
import net.minecraft.client.renderer.tileentity.TileEntityRendererDispatcher;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
import net.minecraft.world.IBlockAccess;
|
||||
|
||||
import org.lwjgl.opengl.GL11;
|
||||
import org.lwjgl.opengl.GL12;
|
||||
|
||||
import com.kentington.thaumichorizons.common.ThaumicHorizons;
|
||||
import com.kentington.thaumichorizons.common.tiles.TileSpike;
|
||||
|
||||
import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler;
|
||||
import thaumcraft.client.renderers.block.BlockRenderer;
|
||||
|
||||
public class BlockSpikeRenderer extends BlockRenderer implements ISimpleBlockRenderingHandler {
|
||||
public void renderInventoryBlock(
|
||||
final Block block, final int metadata, final int modelID, final RenderBlocks renderer) {
|
||||
|
||||
public void renderInventoryBlock(final Block block, final int metadata, final int modelID,
|
||||
final RenderBlocks renderer) {
|
||||
GL11.glPushMatrix();
|
||||
GL11.glRotatef(90.0f, 0.0f, 1.0f, 0.0f);
|
||||
GL11.glTranslatef(-0.5f, -0.5f, -0.5f);
|
||||
byte type = 0;
|
||||
if (block == ThaumicHorizons.blockSpike) {
|
||||
type = 0;
|
||||
} else if (block == ThaumicHorizons.blockSpikeTooth) {
|
||||
byte type = 0; // ThaumicHorizons.blockSpike
|
||||
if (block == ThaumicHorizons.blockSpikeTooth) {
|
||||
type = 2;
|
||||
} else if (block == ThaumicHorizons.blockSpikeWood) {
|
||||
type = 1;
|
||||
}
|
||||
final TileSpike tc = new TileSpike((byte) 1, type);
|
||||
tc.blockMetadata = metadata;
|
||||
TileEntityRendererDispatcher.instance.renderTileEntityAt((TileEntity) tc, 0.0, 0.0, 0.0, 0.0f);
|
||||
GL11.glEnable(32826);
|
||||
TileEntityRendererDispatcher.instance.renderTileEntityAt(tc, 0.0, 0.0, 0.0, 0.0f);
|
||||
GL11.glEnable(GL12.GL_RESCALE_NORMAL);
|
||||
GL11.glPopMatrix();
|
||||
}
|
||||
|
||||
public boolean renderWorldBlock(
|
||||
final IBlockAccess world,
|
||||
final int x,
|
||||
final int y,
|
||||
final int z,
|
||||
final Block block,
|
||||
final int modelId,
|
||||
final RenderBlocks renderer) {
|
||||
public boolean renderWorldBlock(final IBlockAccess world, final int x, final int y, final int z, final Block block,
|
||||
final int modelId, final RenderBlocks renderer) {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
+14
-16
@@ -4,38 +4,36 @@
|
||||
|
||||
package com.kentington.thaumichorizons.client.renderer.block;
|
||||
|
||||
import com.kentington.thaumichorizons.common.ThaumicHorizons;
|
||||
import com.kentington.thaumichorizons.common.tiles.TileSyntheticNode;
|
||||
import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler;
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.client.renderer.RenderBlocks;
|
||||
import net.minecraft.client.renderer.tileentity.TileEntityRendererDispatcher;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
import net.minecraft.world.IBlockAccess;
|
||||
|
||||
import org.lwjgl.opengl.GL11;
|
||||
import org.lwjgl.opengl.GL12;
|
||||
|
||||
import com.kentington.thaumichorizons.common.ThaumicHorizons;
|
||||
import com.kentington.thaumichorizons.common.tiles.TileSyntheticNode;
|
||||
|
||||
import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler;
|
||||
import thaumcraft.client.renderers.block.BlockRenderer;
|
||||
|
||||
public class BlockSyntheticNodeRender extends BlockRenderer implements ISimpleBlockRenderingHandler {
|
||||
public void renderInventoryBlock(
|
||||
final Block block, final int metadata, final int modelID, final RenderBlocks renderer) {
|
||||
|
||||
public void renderInventoryBlock(final Block block, final int metadata, final int modelID,
|
||||
final RenderBlocks renderer) {
|
||||
GL11.glPushMatrix();
|
||||
GL11.glRotatef(90.0f, 0.0f, 1.0f, 0.0f);
|
||||
GL11.glTranslatef(-0.5f, -0.5f, -0.5f);
|
||||
final TileSyntheticNode tc = new TileSyntheticNode();
|
||||
tc.blockMetadata = metadata;
|
||||
TileEntityRendererDispatcher.instance.renderTileEntityAt((TileEntity) tc, 0.0, 0.0, 0.0, 0.0f);
|
||||
GL11.glEnable(32826);
|
||||
TileEntityRendererDispatcher.instance.renderTileEntityAt(tc, 0.0, 0.0, 0.0, 0.0f);
|
||||
GL11.glEnable(GL12.GL_RESCALE_NORMAL);
|
||||
GL11.glPopMatrix();
|
||||
}
|
||||
|
||||
public boolean renderWorldBlock(
|
||||
final IBlockAccess world,
|
||||
final int x,
|
||||
final int y,
|
||||
final int z,
|
||||
final Block block,
|
||||
final int modelId,
|
||||
final RenderBlocks renderer) {
|
||||
public boolean renderWorldBlock(final IBlockAccess world, final int x, final int y, final int z, final Block block,
|
||||
final int modelId, final RenderBlocks renderer) {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
+14
-16
@@ -4,38 +4,36 @@
|
||||
|
||||
package com.kentington.thaumichorizons.client.renderer.block;
|
||||
|
||||
import com.kentington.thaumichorizons.common.ThaumicHorizons;
|
||||
import com.kentington.thaumichorizons.common.tiles.TileTransductionAmplifier;
|
||||
import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler;
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.client.renderer.RenderBlocks;
|
||||
import net.minecraft.client.renderer.tileentity.TileEntityRendererDispatcher;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
import net.minecraft.world.IBlockAccess;
|
||||
|
||||
import org.lwjgl.opengl.GL11;
|
||||
import org.lwjgl.opengl.GL12;
|
||||
|
||||
import com.kentington.thaumichorizons.common.ThaumicHorizons;
|
||||
import com.kentington.thaumichorizons.common.tiles.TileTransductionAmplifier;
|
||||
|
||||
import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler;
|
||||
import thaumcraft.client.renderers.block.BlockRenderer;
|
||||
|
||||
public class BlockTransductionAmplifierRender extends BlockRenderer implements ISimpleBlockRenderingHandler {
|
||||
public void renderInventoryBlock(
|
||||
final Block block, final int metadata, final int modelID, final RenderBlocks renderer) {
|
||||
|
||||
public void renderInventoryBlock(final Block block, final int metadata, final int modelID,
|
||||
final RenderBlocks renderer) {
|
||||
GL11.glPushMatrix();
|
||||
GL11.glRotatef(90.0f, 0.0f, 1.0f, 0.0f);
|
||||
GL11.glTranslatef(-0.5f, -0.5f, -0.5f);
|
||||
final TileTransductionAmplifier tc = new TileTransductionAmplifier();
|
||||
tc.blockMetadata = metadata;
|
||||
TileEntityRendererDispatcher.instance.renderTileEntityAt((TileEntity) tc, 0.0, 0.0, 0.0, 0.0f);
|
||||
GL11.glEnable(32826);
|
||||
TileEntityRendererDispatcher.instance.renderTileEntityAt(tc, 0.0, 0.0, 0.0, 0.0f);
|
||||
GL11.glEnable(GL12.GL_RESCALE_NORMAL);
|
||||
GL11.glPopMatrix();
|
||||
}
|
||||
|
||||
public boolean renderWorldBlock(
|
||||
final IBlockAccess world,
|
||||
final int x,
|
||||
final int y,
|
||||
final int z,
|
||||
final Block block,
|
||||
final int modelId,
|
||||
final RenderBlocks renderer) {
|
||||
public boolean renderWorldBlock(final IBlockAccess world, final int x, final int y, final int z, final Block block,
|
||||
final int modelId, final RenderBlocks renderer) {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
+9
-12
@@ -4,25 +4,22 @@
|
||||
|
||||
package com.kentington.thaumichorizons.client.renderer.block;
|
||||
|
||||
import com.kentington.thaumichorizons.common.ThaumicHorizons;
|
||||
import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler;
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.client.renderer.RenderBlocks;
|
||||
import net.minecraft.world.IBlockAccess;
|
||||
|
||||
import com.kentington.thaumichorizons.common.ThaumicHorizons;
|
||||
|
||||
import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler;
|
||||
import thaumcraft.client.renderers.block.BlockRenderer;
|
||||
|
||||
public class BlockVatInteriorRender extends BlockRenderer implements ISimpleBlockRenderingHandler {
|
||||
public void renderInventoryBlock(
|
||||
final Block block, final int metadata, final int modelId, final RenderBlocks renderer) {}
|
||||
|
||||
public boolean renderWorldBlock(
|
||||
final IBlockAccess world,
|
||||
final int x,
|
||||
final int y,
|
||||
final int z,
|
||||
final Block block,
|
||||
final int modelId,
|
||||
final RenderBlocks renderer) {
|
||||
public void renderInventoryBlock(final Block block, final int metadata, final int modelId,
|
||||
final RenderBlocks renderer) {}
|
||||
|
||||
public boolean renderWorldBlock(final IBlockAccess world, final int x, final int y, final int z, final Block block,
|
||||
final int modelId, final RenderBlocks renderer) {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
+14
-16
@@ -4,38 +4,36 @@
|
||||
|
||||
package com.kentington.thaumichorizons.client.renderer.block;
|
||||
|
||||
import com.kentington.thaumichorizons.common.ThaumicHorizons;
|
||||
import com.kentington.thaumichorizons.common.tiles.TileVatMatrix;
|
||||
import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler;
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.client.renderer.RenderBlocks;
|
||||
import net.minecraft.client.renderer.tileentity.TileEntityRendererDispatcher;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
import net.minecraft.world.IBlockAccess;
|
||||
|
||||
import org.lwjgl.opengl.GL11;
|
||||
import org.lwjgl.opengl.GL12;
|
||||
|
||||
import com.kentington.thaumichorizons.common.ThaumicHorizons;
|
||||
import com.kentington.thaumichorizons.common.tiles.TileVatMatrix;
|
||||
|
||||
import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler;
|
||||
import thaumcraft.client.renderers.block.BlockRenderer;
|
||||
|
||||
public class BlockVatMatrixRender extends BlockRenderer implements ISimpleBlockRenderingHandler {
|
||||
public void renderInventoryBlock(
|
||||
final Block block, final int metadata, final int modelID, final RenderBlocks renderer) {
|
||||
|
||||
public void renderInventoryBlock(final Block block, final int metadata, final int modelID,
|
||||
final RenderBlocks renderer) {
|
||||
GL11.glPushMatrix();
|
||||
GL11.glRotatef(90.0f, 0.0f, 1.0f, 0.0f);
|
||||
GL11.glTranslatef(-0.5f, -0.5f, -0.5f);
|
||||
final TileVatMatrix tc = new TileVatMatrix();
|
||||
tc.blockMetadata = metadata;
|
||||
TileEntityRendererDispatcher.instance.renderTileEntityAt((TileEntity) tc, 0.0, 0.0, 0.0, 0.0f);
|
||||
GL11.glEnable(32826);
|
||||
TileEntityRendererDispatcher.instance.renderTileEntityAt(tc, 0.0, 0.0, 0.0, 0.0f);
|
||||
GL11.glEnable(GL12.GL_RESCALE_NORMAL);
|
||||
GL11.glPopMatrix();
|
||||
}
|
||||
|
||||
public boolean renderWorldBlock(
|
||||
final IBlockAccess world,
|
||||
final int x,
|
||||
final int y,
|
||||
final int z,
|
||||
final Block block,
|
||||
final int modelId,
|
||||
final RenderBlocks renderer) {
|
||||
public boolean renderWorldBlock(final IBlockAccess world, final int x, final int y, final int z, final Block block,
|
||||
final int modelId, final RenderBlocks renderer) {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
+81
-228
@@ -4,37 +4,34 @@
|
||||
|
||||
package com.kentington.thaumichorizons.client.renderer.block;
|
||||
|
||||
import com.kentington.thaumichorizons.common.ThaumicHorizons;
|
||||
import com.kentington.thaumichorizons.common.blocks.BlockVat;
|
||||
import com.kentington.thaumichorizons.common.tiles.TileVat;
|
||||
import com.kentington.thaumichorizons.common.tiles.TileVatSlave;
|
||||
import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler;
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.client.renderer.RenderBlocks;
|
||||
import net.minecraft.client.renderer.Tessellator;
|
||||
import net.minecraft.init.Blocks;
|
||||
import net.minecraft.world.IBlockAccess;
|
||||
|
||||
public class BlockVatRender implements ISimpleBlockRenderingHandler {
|
||||
public void renderInventoryBlock(
|
||||
final Block block, final int metadata, final int modelID, final RenderBlocks renderer) {}
|
||||
import com.kentington.thaumichorizons.common.ThaumicHorizons;
|
||||
import com.kentington.thaumichorizons.common.blocks.BlockVat;
|
||||
import com.kentington.thaumichorizons.common.tiles.TileVat;
|
||||
import com.kentington.thaumichorizons.common.tiles.TileVatSlave;
|
||||
|
||||
public boolean renderWorldBlock(
|
||||
final IBlockAccess world,
|
||||
final int x,
|
||||
final int y,
|
||||
final int z,
|
||||
final Block block,
|
||||
final int modelId,
|
||||
final RenderBlocks renderer) {
|
||||
if (world.getTileEntity(x, y, z) instanceof TileVatSlave) {
|
||||
final TileVatSlave tco = (TileVatSlave) world.getTileEntity(x, y, z);
|
||||
import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler;
|
||||
|
||||
public class BlockVatRender implements ISimpleBlockRenderingHandler {
|
||||
|
||||
public void renderInventoryBlock(final Block block, final int metadata, final int modelID,
|
||||
final RenderBlocks renderer) {}
|
||||
|
||||
public boolean renderWorldBlock(final IBlockAccess world, final int x, final int y, final int z, final Block block,
|
||||
final int modelId, final RenderBlocks renderer) {
|
||||
if (world.getTileEntity(x, y, z) instanceof final TileVatSlave tco) {
|
||||
final TileVat boss = tco.getBoss(-1);
|
||||
if (boss == null) {
|
||||
return false;
|
||||
}
|
||||
Tessellator.instance.setColorRGBA(255, 255, 255, 192);
|
||||
Tessellator.instance.setBrightness(241);
|
||||
final Tessellator tess = Tessellator.instance;
|
||||
tess.setColorRGBA(255, 255, 255, 192);
|
||||
tess.setBrightness(241);
|
||||
renderer.enableAO = false;
|
||||
final int dx = boss.xCoord - tco.xCoord;
|
||||
final int dy = boss.yCoord - tco.yCoord;
|
||||
@@ -42,150 +39,78 @@ public class BlockVatRender implements ISimpleBlockRenderingHandler {
|
||||
if (world.getBlockMetadata(x, y, z) == 10) {
|
||||
if (dy == 1) {
|
||||
if (dx == -1 && dz == -1) {
|
||||
renderer.renderFaceXPos(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
((BlockVat) ThaumicHorizons.blockVat).iconGlassTL);
|
||||
renderer.renderFaceZPos(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
((BlockVat) ThaumicHorizons.blockVat).iconGlassTR);
|
||||
renderer.renderFaceXPos(block, x, y, z, ((BlockVat) ThaumicHorizons.blockVat).iconGlassTL);
|
||||
renderer.renderFaceZPos(block, x, y, z, ((BlockVat) ThaumicHorizons.blockVat).iconGlassTR);
|
||||
block.setBlockBounds(0.0f, 0.0f, 0.0f, 0.75f, 1.0f, 0.75f);
|
||||
renderer.setRenderBoundsFromBlock(block);
|
||||
Tessellator.instance.setColorRGBA(255, 255, 255, 255);
|
||||
renderer.renderFaceXPos(
|
||||
block, (double) x, (double) y, (double) z, Blocks.water.getBlockTextureFromSide(0));
|
||||
renderer.renderFaceZPos(
|
||||
block, (double) x, (double) y, (double) z, Blocks.water.getBlockTextureFromSide(0));
|
||||
tess.setColorRGBA(255, 255, 255, 255);
|
||||
renderer.renderFaceXPos(block, x, y, z, Blocks.water.getBlockTextureFromSide(0));
|
||||
renderer.renderFaceZPos(block, x, y, z, Blocks.water.getBlockTextureFromSide(0));
|
||||
block.setBlockBounds(0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 1.0f);
|
||||
renderer.setRenderBoundsFromBlock(block);
|
||||
} else if (dx == 1 && dz == -1) {
|
||||
renderer.renderFaceXNeg(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
((BlockVat) ThaumicHorizons.blockVat).iconGlassTR);
|
||||
renderer.renderFaceZPos(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
((BlockVat) ThaumicHorizons.blockVat).iconGlassTL);
|
||||
renderer.renderFaceXNeg(block, x, y, z, ((BlockVat) ThaumicHorizons.blockVat).iconGlassTR);
|
||||
renderer.renderFaceZPos(block, x, y, z, ((BlockVat) ThaumicHorizons.blockVat).iconGlassTL);
|
||||
block.setBlockBounds(0.25f, 0.0f, 0.0f, 1.0f, 1.0f, 0.75f);
|
||||
renderer.setRenderBoundsFromBlock(block);
|
||||
Tessellator.instance.setColorRGBA(255, 255, 255, 255);
|
||||
renderer.renderFaceXNeg(
|
||||
block, (double) x, (double) y, (double) z, Blocks.water.getBlockTextureFromSide(0));
|
||||
renderer.renderFaceZPos(
|
||||
block, (double) x, (double) y, (double) z, Blocks.water.getBlockTextureFromSide(0));
|
||||
tess.setColorRGBA(255, 255, 255, 255);
|
||||
renderer.renderFaceXNeg(block, x, y, z, Blocks.water.getBlockTextureFromSide(0));
|
||||
renderer.renderFaceZPos(block, x, y, z, Blocks.water.getBlockTextureFromSide(0));
|
||||
block.setBlockBounds(0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 1.0f);
|
||||
renderer.setRenderBoundsFromBlock(block);
|
||||
} else if (dx == 1 && dz == 1) {
|
||||
renderer.renderFaceXNeg(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
((BlockVat) ThaumicHorizons.blockVat).iconGlassTL);
|
||||
renderer.renderFaceZNeg(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
((BlockVat) ThaumicHorizons.blockVat).iconGlassTR);
|
||||
renderer.renderFaceXNeg(block, x, y, z, ((BlockVat) ThaumicHorizons.blockVat).iconGlassTL);
|
||||
renderer.renderFaceZNeg(block, x, y, z, ((BlockVat) ThaumicHorizons.blockVat).iconGlassTR);
|
||||
block.setBlockBounds(0.25f, 0.0f, 0.25f, 1.0f, 1.0f, 1.0f);
|
||||
renderer.setRenderBoundsFromBlock(block);
|
||||
Tessellator.instance.setColorRGBA(255, 255, 255, 255);
|
||||
renderer.renderFaceXNeg(
|
||||
block, (double) x, (double) y, (double) z, Blocks.water.getBlockTextureFromSide(0));
|
||||
renderer.renderFaceZNeg(
|
||||
block, (double) x, (double) y, (double) z, Blocks.water.getBlockTextureFromSide(0));
|
||||
tess.setColorRGBA(255, 255, 255, 255);
|
||||
renderer.renderFaceXNeg(block, x, y, z, Blocks.water.getBlockTextureFromSide(0));
|
||||
renderer.renderFaceZNeg(block, x, y, z, Blocks.water.getBlockTextureFromSide(0));
|
||||
block.setBlockBounds(0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 1.0f);
|
||||
renderer.setRenderBoundsFromBlock(block);
|
||||
} else if (dx == -1 && dz == 1) {
|
||||
renderer.renderFaceXPos(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
((BlockVat) ThaumicHorizons.blockVat).iconGlassTR);
|
||||
renderer.renderFaceZNeg(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
((BlockVat) ThaumicHorizons.blockVat).iconGlassTL);
|
||||
renderer.renderFaceXPos(block, x, y, z, ((BlockVat) ThaumicHorizons.blockVat).iconGlassTR);
|
||||
renderer.renderFaceZNeg(block, x, y, z, ((BlockVat) ThaumicHorizons.blockVat).iconGlassTL);
|
||||
block.setBlockBounds(0.0f, 0.0f, 0.25f, 0.75f, 1.0f, 1.0f);
|
||||
renderer.setRenderBoundsFromBlock(block);
|
||||
Tessellator.instance.setColorRGBA(255, 255, 255, 255);
|
||||
renderer.renderFaceXPos(
|
||||
block, (double) x, (double) y, (double) z, Blocks.water.getBlockTextureFromSide(0));
|
||||
renderer.renderFaceZNeg(
|
||||
block, (double) x, (double) y, (double) z, Blocks.water.getBlockTextureFromSide(0));
|
||||
tess.setColorRGBA(255, 255, 255, 255);
|
||||
renderer.renderFaceXPos(block, x, y, z, Blocks.water.getBlockTextureFromSide(0));
|
||||
renderer.renderFaceZNeg(block, x, y, z, Blocks.water.getBlockTextureFromSide(0));
|
||||
block.setBlockBounds(0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 1.0f);
|
||||
renderer.setRenderBoundsFromBlock(block);
|
||||
} else if (dx == 0) {
|
||||
if (dz == -1) {
|
||||
renderer.renderFaceZPos(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
((BlockVat) ThaumicHorizons.blockVat).iconGlassT);
|
||||
renderer.renderFaceZPos(block, x, y, z, ((BlockVat) ThaumicHorizons.blockVat).iconGlassT);
|
||||
block.setBlockBounds(0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.75f);
|
||||
renderer.setRenderBoundsFromBlock(block);
|
||||
Tessellator.instance.setColorRGBA(255, 255, 255, 255);
|
||||
renderer.renderFaceZPos(
|
||||
block, (double) x, (double) y, (double) z, Blocks.water.getBlockTextureFromSide(0));
|
||||
tess.setColorRGBA(255, 255, 255, 255);
|
||||
renderer.renderFaceZPos(block, x, y, z, Blocks.water.getBlockTextureFromSide(0));
|
||||
block.setBlockBounds(0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 1.0f);
|
||||
renderer.setRenderBoundsFromBlock(block);
|
||||
} else if (dz == 1) {
|
||||
renderer.renderFaceZNeg(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
((BlockVat) ThaumicHorizons.blockVat).iconGlassT);
|
||||
renderer.renderFaceZNeg(block, x, y, z, ((BlockVat) ThaumicHorizons.blockVat).iconGlassT);
|
||||
block.setBlockBounds(0.0f, 0.0f, 0.25f, 1.0f, 1.0f, 1.0f);
|
||||
renderer.setRenderBoundsFromBlock(block);
|
||||
Tessellator.instance.setColorRGBA(255, 255, 255, 255);
|
||||
renderer.renderFaceZNeg(
|
||||
block, (double) x, (double) y, (double) z, Blocks.water.getBlockTextureFromSide(0));
|
||||
tess.setColorRGBA(255, 255, 255, 255);
|
||||
renderer.renderFaceZNeg(block, x, y, z, Blocks.water.getBlockTextureFromSide(0));
|
||||
block.setBlockBounds(0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 1.0f);
|
||||
renderer.setRenderBoundsFromBlock(block);
|
||||
}
|
||||
} else if (dz == 0) {
|
||||
if (dx == -1) {
|
||||
renderer.renderFaceXPos(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
((BlockVat) ThaumicHorizons.blockVat).iconGlassT);
|
||||
renderer.renderFaceXPos(block, x, y, z, ((BlockVat) ThaumicHorizons.blockVat).iconGlassT);
|
||||
block.setBlockBounds(0.0f, 0.0f, 0.0f, 0.75f, 1.0f, 1.0f);
|
||||
renderer.setRenderBoundsFromBlock(block);
|
||||
Tessellator.instance.setColorRGBA(255, 255, 255, 255);
|
||||
renderer.renderFaceXPos(
|
||||
block, (double) x, (double) y, (double) z, Blocks.water.getBlockTextureFromSide(0));
|
||||
tess.setColorRGBA(255, 255, 255, 255);
|
||||
renderer.renderFaceXPos(block, x, y, z, Blocks.water.getBlockTextureFromSide(0));
|
||||
block.setBlockBounds(0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 1.0f);
|
||||
renderer.setRenderBoundsFromBlock(block);
|
||||
} else if (dx == 1) {
|
||||
renderer.renderFaceXNeg(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
((BlockVat) ThaumicHorizons.blockVat).iconGlassT);
|
||||
renderer.renderFaceXNeg(block, x, y, z, ((BlockVat) ThaumicHorizons.blockVat).iconGlassT);
|
||||
block.setBlockBounds(0.25f, 0.0f, 0.0f, 1.0f, 1.0f, 1.0f);
|
||||
renderer.setRenderBoundsFromBlock(block);
|
||||
Tessellator.instance.setColorRGBA(255, 255, 255, 255);
|
||||
renderer.renderFaceXNeg(
|
||||
block, (double) x, (double) y, (double) z, Blocks.water.getBlockTextureFromSide(0));
|
||||
tess.setColorRGBA(255, 255, 255, 255);
|
||||
renderer.renderFaceXNeg(block, x, y, z, Blocks.water.getBlockTextureFromSide(0));
|
||||
block.setBlockBounds(0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 1.0f);
|
||||
renderer.setRenderBoundsFromBlock(block);
|
||||
}
|
||||
@@ -194,150 +119,78 @@ public class BlockVatRender implements ISimpleBlockRenderingHandler {
|
||||
if (dx == -1 && dz == -1) {
|
||||
block.setBlockBounds(0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 1.0f);
|
||||
renderer.setRenderBoundsFromBlock(block);
|
||||
renderer.renderFaceXPos(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
((BlockVat) ThaumicHorizons.blockVat).iconGlassBL);
|
||||
renderer.renderFaceZPos(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
((BlockVat) ThaumicHorizons.blockVat).iconGlassBR);
|
||||
renderer.renderFaceXPos(block, x, y, z, ((BlockVat) ThaumicHorizons.blockVat).iconGlassBL);
|
||||
renderer.renderFaceZPos(block, x, y, z, ((BlockVat) ThaumicHorizons.blockVat).iconGlassBR);
|
||||
block.setBlockBounds(0.0f, 0.0f, 0.0f, 0.75f, 1.0f, 0.75f);
|
||||
renderer.setRenderBoundsFromBlock(block);
|
||||
Tessellator.instance.setColorRGBA(255, 255, 255, 255);
|
||||
renderer.renderFaceXPos(
|
||||
block, (double) x, (double) y, (double) z, Blocks.water.getBlockTextureFromSide(0));
|
||||
renderer.renderFaceZPos(
|
||||
block, (double) x, (double) y, (double) z, Blocks.water.getBlockTextureFromSide(0));
|
||||
tess.setColorRGBA(255, 255, 255, 255);
|
||||
renderer.renderFaceXPos(block, x, y, z, Blocks.water.getBlockTextureFromSide(0));
|
||||
renderer.renderFaceZPos(block, x, y, z, Blocks.water.getBlockTextureFromSide(0));
|
||||
block.setBlockBounds(0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 1.0f);
|
||||
renderer.setRenderBoundsFromBlock(block);
|
||||
} else if (dx == 1 && dz == -1) {
|
||||
renderer.renderFaceXNeg(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
((BlockVat) ThaumicHorizons.blockVat).iconGlassBR);
|
||||
renderer.renderFaceZPos(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
((BlockVat) ThaumicHorizons.blockVat).iconGlassBL);
|
||||
renderer.renderFaceXNeg(block, x, y, z, ((BlockVat) ThaumicHorizons.blockVat).iconGlassBR);
|
||||
renderer.renderFaceZPos(block, x, y, z, ((BlockVat) ThaumicHorizons.blockVat).iconGlassBL);
|
||||
block.setBlockBounds(0.25f, 0.0f, 0.0f, 1.0f, 1.0f, 0.75f);
|
||||
renderer.setRenderBoundsFromBlock(block);
|
||||
Tessellator.instance.setColorRGBA(255, 255, 255, 255);
|
||||
renderer.renderFaceXNeg(
|
||||
block, (double) x, (double) y, (double) z, Blocks.water.getBlockTextureFromSide(0));
|
||||
renderer.renderFaceZPos(
|
||||
block, (double) x, (double) y, (double) z, Blocks.water.getBlockTextureFromSide(0));
|
||||
tess.setColorRGBA(255, 255, 255, 255);
|
||||
renderer.renderFaceXNeg(block, x, y, z, Blocks.water.getBlockTextureFromSide(0));
|
||||
renderer.renderFaceZPos(block, x, y, z, Blocks.water.getBlockTextureFromSide(0));
|
||||
block.setBlockBounds(0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 1.0f);
|
||||
renderer.setRenderBoundsFromBlock(block);
|
||||
} else if (dx == 1 && dz == 1) {
|
||||
renderer.renderFaceXNeg(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
((BlockVat) ThaumicHorizons.blockVat).iconGlassBL);
|
||||
renderer.renderFaceZNeg(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
((BlockVat) ThaumicHorizons.blockVat).iconGlassBR);
|
||||
renderer.renderFaceXNeg(block, x, y, z, ((BlockVat) ThaumicHorizons.blockVat).iconGlassBL);
|
||||
renderer.renderFaceZNeg(block, x, y, z, ((BlockVat) ThaumicHorizons.blockVat).iconGlassBR);
|
||||
block.setBlockBounds(0.25f, 0.0f, 0.25f, 1.0f, 1.0f, 1.0f);
|
||||
renderer.setRenderBoundsFromBlock(block);
|
||||
Tessellator.instance.setColorRGBA(255, 255, 255, 255);
|
||||
renderer.renderFaceXNeg(
|
||||
block, (double) x, (double) y, (double) z, Blocks.water.getBlockTextureFromSide(0));
|
||||
renderer.renderFaceZNeg(
|
||||
block, (double) x, (double) y, (double) z, Blocks.water.getBlockTextureFromSide(0));
|
||||
tess.setColorRGBA(255, 255, 255, 255);
|
||||
renderer.renderFaceXNeg(block, x, y, z, Blocks.water.getBlockTextureFromSide(0));
|
||||
renderer.renderFaceZNeg(block, x, y, z, Blocks.water.getBlockTextureFromSide(0));
|
||||
block.setBlockBounds(0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 1.0f);
|
||||
renderer.setRenderBoundsFromBlock(block);
|
||||
} else if (dx == -1 && dz == 1) {
|
||||
renderer.renderFaceXPos(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
((BlockVat) ThaumicHorizons.blockVat).iconGlassBR);
|
||||
renderer.renderFaceZNeg(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
((BlockVat) ThaumicHorizons.blockVat).iconGlassBL);
|
||||
renderer.renderFaceXPos(block, x, y, z, ((BlockVat) ThaumicHorizons.blockVat).iconGlassBR);
|
||||
renderer.renderFaceZNeg(block, x, y, z, ((BlockVat) ThaumicHorizons.blockVat).iconGlassBL);
|
||||
block.setBlockBounds(0.0f, 0.0f, 0.25f, 0.75f, 1.0f, 1.0f);
|
||||
renderer.setRenderBoundsFromBlock(block);
|
||||
Tessellator.instance.setColorRGBA(255, 255, 255, 255);
|
||||
renderer.renderFaceXPos(
|
||||
block, (double) x, (double) y, (double) z, Blocks.water.getBlockTextureFromSide(0));
|
||||
renderer.renderFaceZNeg(
|
||||
block, (double) x, (double) y, (double) z, Blocks.water.getBlockTextureFromSide(0));
|
||||
tess.setColorRGBA(255, 255, 255, 255);
|
||||
renderer.renderFaceXPos(block, x, y, z, Blocks.water.getBlockTextureFromSide(0));
|
||||
renderer.renderFaceZNeg(block, x, y, z, Blocks.water.getBlockTextureFromSide(0));
|
||||
block.setBlockBounds(0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 1.0f);
|
||||
renderer.setRenderBoundsFromBlock(block);
|
||||
} else if (dx == 0) {
|
||||
if (dz == -1) {
|
||||
renderer.renderFaceZPos(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
((BlockVat) ThaumicHorizons.blockVat).iconGlassB);
|
||||
renderer.renderFaceZPos(block, x, y, z, ((BlockVat) ThaumicHorizons.blockVat).iconGlassB);
|
||||
block.setBlockBounds(0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.75f);
|
||||
renderer.setRenderBoundsFromBlock(block);
|
||||
Tessellator.instance.setColorRGBA(255, 255, 255, 255);
|
||||
renderer.renderFaceZPos(
|
||||
block, (double) x, (double) y, (double) z, Blocks.water.getBlockTextureFromSide(0));
|
||||
tess.setColorRGBA(255, 255, 255, 255);
|
||||
renderer.renderFaceZPos(block, x, y, z, Blocks.water.getBlockTextureFromSide(0));
|
||||
block.setBlockBounds(0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 1.0f);
|
||||
renderer.setRenderBoundsFromBlock(block);
|
||||
} else if (dz == 1) {
|
||||
renderer.renderFaceZNeg(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
((BlockVat) ThaumicHorizons.blockVat).iconGlassB);
|
||||
renderer.renderFaceZNeg(block, x, y, z, ((BlockVat) ThaumicHorizons.blockVat).iconGlassB);
|
||||
block.setBlockBounds(0.0f, 0.0f, 0.25f, 1.0f, 1.0f, 1.0f);
|
||||
renderer.setRenderBoundsFromBlock(block);
|
||||
Tessellator.instance.setColorRGBA(255, 255, 255, 255);
|
||||
renderer.renderFaceZNeg(
|
||||
block, (double) x, (double) y, (double) z, Blocks.water.getBlockTextureFromSide(0));
|
||||
tess.setColorRGBA(255, 255, 255, 255);
|
||||
renderer.renderFaceZNeg(block, x, y, z, Blocks.water.getBlockTextureFromSide(0));
|
||||
block.setBlockBounds(0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 1.0f);
|
||||
renderer.setRenderBoundsFromBlock(block);
|
||||
}
|
||||
} else if (dz == 0) {
|
||||
if (dx == -1) {
|
||||
renderer.renderFaceXPos(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
((BlockVat) ThaumicHorizons.blockVat).iconGlassB);
|
||||
renderer.renderFaceXPos(block, x, y, z, ((BlockVat) ThaumicHorizons.blockVat).iconGlassB);
|
||||
block.setBlockBounds(0.0f, 0.0f, 0.0f, 0.75f, 1.0f, 1.0f);
|
||||
renderer.setRenderBoundsFromBlock(block);
|
||||
Tessellator.instance.setColorRGBA(255, 255, 255, 255);
|
||||
renderer.renderFaceXPos(
|
||||
block, (double) x, (double) y, (double) z, Blocks.water.getBlockTextureFromSide(0));
|
||||
tess.setColorRGBA(255, 255, 255, 255);
|
||||
renderer.renderFaceXPos(block, x, y, z, Blocks.water.getBlockTextureFromSide(0));
|
||||
block.setBlockBounds(0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 1.0f);
|
||||
renderer.setRenderBoundsFromBlock(block);
|
||||
} else if (dx == 1) {
|
||||
renderer.renderFaceXNeg(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
((BlockVat) ThaumicHorizons.blockVat).iconGlassB);
|
||||
renderer.renderFaceXNeg(block, x, y, z, ((BlockVat) ThaumicHorizons.blockVat).iconGlassB);
|
||||
block.setBlockBounds(0.25f, 0.0f, 0.0f, 1.0f, 1.0f, 1.0f);
|
||||
renderer.setRenderBoundsFromBlock(block);
|
||||
Tessellator.instance.setColorRGBA(255, 255, 255, 255);
|
||||
renderer.renderFaceXNeg(
|
||||
block, (double) x, (double) y, (double) z, Blocks.water.getBlockTextureFromSide(0));
|
||||
tess.setColorRGBA(255, 255, 255, 255);
|
||||
renderer.renderFaceXNeg(block, x, y, z, Blocks.water.getBlockTextureFromSide(0));
|
||||
block.setBlockBounds(0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 1.0f);
|
||||
renderer.setRenderBoundsFromBlock(block);
|
||||
}
|
||||
|
||||
+133
-171
@@ -4,139 +4,111 @@
|
||||
|
||||
package com.kentington.thaumichorizons.client.renderer.block;
|
||||
|
||||
import com.kentington.thaumichorizons.common.ThaumicHorizons;
|
||||
import com.kentington.thaumichorizons.common.blocks.BlockVatSolid;
|
||||
import com.kentington.thaumichorizons.common.tiles.TileVat;
|
||||
import com.kentington.thaumichorizons.common.tiles.TileVatSlave;
|
||||
import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler;
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.client.renderer.RenderBlocks;
|
||||
import net.minecraft.client.renderer.Tessellator;
|
||||
import net.minecraft.world.IBlockAccess;
|
||||
|
||||
public class BlockVatSolidRender implements ISimpleBlockRenderingHandler {
|
||||
public void renderInventoryBlock(
|
||||
final Block block, final int metadata, final int modelId, final RenderBlocks renderer) {}
|
||||
import com.kentington.thaumichorizons.common.ThaumicHorizons;
|
||||
import com.kentington.thaumichorizons.common.blocks.BlockVatSolid;
|
||||
import com.kentington.thaumichorizons.common.tiles.TileVat;
|
||||
import com.kentington.thaumichorizons.common.tiles.TileVatSlave;
|
||||
|
||||
public boolean renderWorldBlock(
|
||||
final IBlockAccess world,
|
||||
final int x,
|
||||
final int y,
|
||||
final int z,
|
||||
final Block block,
|
||||
final int modelId,
|
||||
final RenderBlocks renderer) {
|
||||
if (world.getTileEntity(x, y, z) instanceof TileVatSlave) {
|
||||
final TileVatSlave tco = (TileVatSlave) world.getTileEntity(x, y, z);
|
||||
import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler;
|
||||
|
||||
public class BlockVatSolidRender implements ISimpleBlockRenderingHandler {
|
||||
|
||||
public void renderInventoryBlock(final Block block, final int metadata, final int modelId,
|
||||
final RenderBlocks renderer) {}
|
||||
|
||||
public boolean renderWorldBlock(final IBlockAccess world, final int x, final int y, final int z, final Block block,
|
||||
final int modelId, final RenderBlocks renderer) {
|
||||
final Tessellator tess = Tessellator.instance;
|
||||
if (world.getTileEntity(x, y, z) instanceof final TileVatSlave tco) {
|
||||
final TileVat boss = tco.getBoss(-1);
|
||||
if (boss == null) {
|
||||
return false;
|
||||
}
|
||||
Tessellator.instance.setColorOpaque_F(1.0f, 1.0f, 1.0f);
|
||||
Tessellator.instance.setBrightness(150);
|
||||
tess.setColorOpaque_F(1.0f, 1.0f, 1.0f);
|
||||
tess.setBrightness(150);
|
||||
renderer.enableAO = false;
|
||||
final int dx = boss.xCoord - tco.xCoord;
|
||||
final int dy = boss.yCoord - tco.yCoord;
|
||||
final int dz = boss.zCoord - tco.zCoord;
|
||||
if (world.getBlockMetadata(x, y, z) == 6) {
|
||||
renderer.renderFaceXNeg(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
((BlockVatSolid) ThaumicHorizons.blockVatSolid).iconBaseSide);
|
||||
renderer.renderFaceZNeg(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
((BlockVatSolid) ThaumicHorizons.blockVatSolid).iconBaseSide);
|
||||
renderer.renderFaceXPos(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
((BlockVatSolid) ThaumicHorizons.blockVatSolid).iconBaseSide);
|
||||
renderer.renderFaceZPos(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
((BlockVatSolid) ThaumicHorizons.blockVatSolid).iconBaseSide);
|
||||
renderer.renderFaceYNeg(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
((BlockVatSolid) ThaumicHorizons.blockVatSolid).iconBaseCenter);
|
||||
renderer.renderFaceXNeg(block, x, y, z, ((BlockVatSolid) ThaumicHorizons.blockVatSolid).iconBaseSide);
|
||||
renderer.renderFaceZNeg(block, x, y, z, ((BlockVatSolid) ThaumicHorizons.blockVatSolid).iconBaseSide);
|
||||
renderer.renderFaceXPos(block, x, y, z, ((BlockVatSolid) ThaumicHorizons.blockVatSolid).iconBaseSide);
|
||||
renderer.renderFaceZPos(block, x, y, z, ((BlockVatSolid) ThaumicHorizons.blockVatSolid).iconBaseSide);
|
||||
renderer.renderFaceYNeg(block, x, y, z, ((BlockVatSolid) ThaumicHorizons.blockVatSolid).iconBaseCenter);
|
||||
renderer.renderFaceYPos(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
x,
|
||||
y,
|
||||
z,
|
||||
((BlockVatSolid) ThaumicHorizons.blockVatSolid).iconInnerCenter);
|
||||
} else {
|
||||
if (world.getBlockMetadata(x, y, z) == 4) {
|
||||
renderer.renderFaceXNeg(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
x,
|
||||
y,
|
||||
z,
|
||||
((BlockVatSolid) ThaumicHorizons.blockVatSolid).iconBaseSide);
|
||||
renderer.renderFaceZNeg(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
x,
|
||||
y,
|
||||
z,
|
||||
((BlockVatSolid) ThaumicHorizons.blockVatSolid).iconBaseSide);
|
||||
renderer.renderFaceXPos(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
x,
|
||||
y,
|
||||
z,
|
||||
((BlockVatSolid) ThaumicHorizons.blockVatSolid).iconBaseSide);
|
||||
renderer.renderFaceZPos(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
x,
|
||||
y,
|
||||
z,
|
||||
((BlockVatSolid) ThaumicHorizons.blockVatSolid).iconBaseSide);
|
||||
renderer.renderFaceYNeg(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
x,
|
||||
y,
|
||||
z,
|
||||
((BlockVatSolid) ThaumicHorizons.blockVatSolid).iconBaseSideBottom);
|
||||
if (dx == 0) {
|
||||
if (dz == -1) {
|
||||
renderer.renderFaceYPos(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
x,
|
||||
y,
|
||||
z,
|
||||
((BlockVatSolid) ThaumicHorizons.blockVatSolid).iconInnerPosZ);
|
||||
} else if (dz == 1) {
|
||||
renderer.renderFaceYPos(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
x,
|
||||
y,
|
||||
z,
|
||||
((BlockVatSolid) ThaumicHorizons.blockVatSolid).iconInnerNegZ);
|
||||
}
|
||||
} else if (dz == 0) {
|
||||
if (dx == -1) {
|
||||
renderer.renderFaceYPos(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
x,
|
||||
y,
|
||||
z,
|
||||
((BlockVatSolid) ThaumicHorizons.blockVatSolid).iconInnerPosX);
|
||||
} else if (dx == 1) {
|
||||
renderer.renderFaceYPos(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
x,
|
||||
y,
|
||||
z,
|
||||
((BlockVatSolid) ThaumicHorizons.blockVatSolid).iconInnerNegX);
|
||||
}
|
||||
}
|
||||
@@ -145,64 +117,64 @@ public class BlockVatSolidRender implements ISimpleBlockRenderingHandler {
|
||||
if (world.getBlockMetadata(x, y, z) == 5 && dy == 3) {
|
||||
renderer.renderFaceXNeg(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
x,
|
||||
y,
|
||||
z,
|
||||
((BlockVatSolid) ThaumicHorizons.blockVatSolid).iconBaseLeftRight);
|
||||
renderer.renderFaceZNeg(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
x,
|
||||
y,
|
||||
z,
|
||||
((BlockVatSolid) ThaumicHorizons.blockVatSolid).iconBaseLeftRight);
|
||||
renderer.renderFaceXPos(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
x,
|
||||
y,
|
||||
z,
|
||||
((BlockVatSolid) ThaumicHorizons.blockVatSolid).iconBaseLeftRight);
|
||||
renderer.renderFaceZPos(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
x,
|
||||
y,
|
||||
z,
|
||||
((BlockVatSolid) ThaumicHorizons.blockVatSolid).iconBaseLeftRight);
|
||||
renderer.renderFaceYNeg(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
x,
|
||||
y,
|
||||
z,
|
||||
((BlockVatSolid) ThaumicHorizons.blockVatSolid).iconBaseCenter);
|
||||
if (dx == -1) {
|
||||
if (dz == -1) {
|
||||
renderer.renderFaceYPos(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
x,
|
||||
y,
|
||||
z,
|
||||
((BlockVatSolid) ThaumicHorizons.blockVatSolid).iconInnerCornerD);
|
||||
} else if (dz == 1) {
|
||||
renderer.renderFaceYPos(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
x,
|
||||
y,
|
||||
z,
|
||||
((BlockVatSolid) ThaumicHorizons.blockVatSolid).iconInnerCornerC);
|
||||
}
|
||||
} else if (dx == 1) {
|
||||
if (dz == -1) {
|
||||
renderer.renderFaceYPos(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
x,
|
||||
y,
|
||||
z,
|
||||
((BlockVatSolid) ThaumicHorizons.blockVatSolid).iconInnerCornerA);
|
||||
} else if (dz == 1) {
|
||||
renderer.renderFaceYPos(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
x,
|
||||
y,
|
||||
z,
|
||||
((BlockVatSolid) ThaumicHorizons.blockVatSolid).iconInnerCornerB);
|
||||
}
|
||||
}
|
||||
@@ -211,119 +183,119 @@ public class BlockVatSolidRender implements ISimpleBlockRenderingHandler {
|
||||
if (world.getBlockMetadata(x, y, z) == 5) {
|
||||
renderer.renderFaceYPos(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
x,
|
||||
y,
|
||||
z,
|
||||
((BlockVatSolid) ThaumicHorizons.blockVatSolid).iconGreatwood);
|
||||
if (dx == 0 || dz == 0) {
|
||||
renderer.renderFaceXNeg(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
x,
|
||||
y,
|
||||
z,
|
||||
((BlockVatSolid) ThaumicHorizons.blockVatSolid).iconLidSideCenter);
|
||||
renderer.renderFaceZNeg(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
x,
|
||||
y,
|
||||
z,
|
||||
((BlockVatSolid) ThaumicHorizons.blockVatSolid).iconLidSideCenter);
|
||||
renderer.renderFaceXPos(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
x,
|
||||
y,
|
||||
z,
|
||||
((BlockVatSolid) ThaumicHorizons.blockVatSolid).iconLidSideCenter);
|
||||
renderer.renderFaceZPos(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
x,
|
||||
y,
|
||||
z,
|
||||
((BlockVatSolid) ThaumicHorizons.blockVatSolid).iconLidSideCenter);
|
||||
if (dz == -1) {
|
||||
renderer.renderFaceYNeg(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
x,
|
||||
y,
|
||||
z,
|
||||
((BlockVatSolid) ThaumicHorizons.blockVatSolid).iconInnerPosZ);
|
||||
} else if (dz == 1) {
|
||||
renderer.renderFaceYNeg(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
x,
|
||||
y,
|
||||
z,
|
||||
((BlockVatSolid) ThaumicHorizons.blockVatSolid).iconInnerNegZ);
|
||||
} else if (dx == -1) {
|
||||
renderer.renderFaceYNeg(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
x,
|
||||
y,
|
||||
z,
|
||||
((BlockVatSolid) ThaumicHorizons.blockVatSolid).iconInnerPosX);
|
||||
} else if (dx == 1) {
|
||||
renderer.renderFaceYNeg(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
x,
|
||||
y,
|
||||
z,
|
||||
((BlockVatSolid) ThaumicHorizons.blockVatSolid).iconInnerNegX);
|
||||
}
|
||||
} else {
|
||||
renderer.renderFaceXNeg(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
x,
|
||||
y,
|
||||
z,
|
||||
((BlockVatSolid) ThaumicHorizons.blockVatSolid).iconLidLeftRight);
|
||||
renderer.renderFaceZNeg(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
x,
|
||||
y,
|
||||
z,
|
||||
((BlockVatSolid) ThaumicHorizons.blockVatSolid).iconLidLeftRight);
|
||||
renderer.renderFaceXPos(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
x,
|
||||
y,
|
||||
z,
|
||||
((BlockVatSolid) ThaumicHorizons.blockVatSolid).iconLidLeftRight);
|
||||
renderer.renderFaceZPos(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
x,
|
||||
y,
|
||||
z,
|
||||
((BlockVatSolid) ThaumicHorizons.blockVatSolid).iconLidLeftRight);
|
||||
if (dx == -1) {
|
||||
if (dz == -1) {
|
||||
renderer.renderFaceYNeg(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
x,
|
||||
y,
|
||||
z,
|
||||
((BlockVatSolid) ThaumicHorizons.blockVatSolid).iconInnerCornerD);
|
||||
} else if (dz == 1) {
|
||||
renderer.renderFaceYNeg(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
x,
|
||||
y,
|
||||
z,
|
||||
((BlockVatSolid) ThaumicHorizons.blockVatSolid).iconInnerCornerC);
|
||||
}
|
||||
} else if (dx == 1) {
|
||||
if (dz == -1) {
|
||||
renderer.renderFaceYNeg(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
x,
|
||||
y,
|
||||
z,
|
||||
((BlockVatSolid) ThaumicHorizons.blockVatSolid).iconInnerCornerA);
|
||||
} else if (dz == 1) {
|
||||
renderer.renderFaceYNeg(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
x,
|
||||
y,
|
||||
z,
|
||||
((BlockVatSolid) ThaumicHorizons.blockVatSolid).iconInnerCornerB);
|
||||
}
|
||||
}
|
||||
@@ -332,20 +304,10 @@ public class BlockVatSolidRender implements ISimpleBlockRenderingHandler {
|
||||
}
|
||||
}
|
||||
} else if (world.getBlockMetadata(x, y, z) == 7) {
|
||||
Tessellator.instance.setColorOpaque_F(1.0f, 1.0f, 1.0f);
|
||||
tess.setColorOpaque_F(1.0f, 1.0f, 1.0f);
|
||||
renderer.enableAO = false;
|
||||
renderer.renderFaceYPos(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
((BlockVatSolid) ThaumicHorizons.blockVatSolid).iconLidCenterTop);
|
||||
renderer.renderFaceYNeg(
|
||||
block,
|
||||
(double) x,
|
||||
(double) y,
|
||||
(double) z,
|
||||
((BlockVatSolid) ThaumicHorizons.blockVatSolid).iconInnerCenter);
|
||||
renderer.renderFaceYPos(block, x, y, z, ((BlockVatSolid) ThaumicHorizons.blockVatSolid).iconLidCenterTop);
|
||||
renderer.renderFaceYNeg(block, x, y, z, ((BlockVatSolid) ThaumicHorizons.blockVatSolid).iconInnerCenter);
|
||||
return renderer.enableAO = true;
|
||||
}
|
||||
renderer.enableAO = true;
|
||||
|
||||
+14
-16
@@ -4,38 +4,36 @@
|
||||
|
||||
package com.kentington.thaumichorizons.client.renderer.block;
|
||||
|
||||
import com.kentington.thaumichorizons.common.ThaumicHorizons;
|
||||
import com.kentington.thaumichorizons.common.tiles.TileVisDynamo;
|
||||
import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler;
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.client.renderer.RenderBlocks;
|
||||
import net.minecraft.client.renderer.tileentity.TileEntityRendererDispatcher;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
import net.minecraft.world.IBlockAccess;
|
||||
|
||||
import org.lwjgl.opengl.GL11;
|
||||
import org.lwjgl.opengl.GL12;
|
||||
|
||||
import com.kentington.thaumichorizons.common.ThaumicHorizons;
|
||||
import com.kentington.thaumichorizons.common.tiles.TileVisDynamo;
|
||||
|
||||
import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler;
|
||||
import thaumcraft.client.renderers.block.BlockRenderer;
|
||||
|
||||
public class BlockVisDynamoRender extends BlockRenderer implements ISimpleBlockRenderingHandler {
|
||||
public void renderInventoryBlock(
|
||||
final Block block, final int metadata, final int modelID, final RenderBlocks renderer) {
|
||||
|
||||
public void renderInventoryBlock(final Block block, final int metadata, final int modelID,
|
||||
final RenderBlocks renderer) {
|
||||
GL11.glPushMatrix();
|
||||
GL11.glRotatef(90.0f, 0.0f, 1.0f, 0.0f);
|
||||
GL11.glTranslatef(-0.5f, -0.5f, -0.5f);
|
||||
final TileVisDynamo tc = new TileVisDynamo();
|
||||
tc.blockMetadata = metadata;
|
||||
TileEntityRendererDispatcher.instance.renderTileEntityAt((TileEntity) tc, 0.0, 0.0, 0.0, 0.0f);
|
||||
GL11.glEnable(32826);
|
||||
TileEntityRendererDispatcher.instance.renderTileEntityAt(tc, 0.0, 0.0, 0.0, 0.0f);
|
||||
GL11.glEnable(GL12.GL_RESCALE_NORMAL);
|
||||
GL11.glPopMatrix();
|
||||
}
|
||||
|
||||
public boolean renderWorldBlock(
|
||||
final IBlockAccess world,
|
||||
final int x,
|
||||
final int y,
|
||||
final int z,
|
||||
final Block block,
|
||||
final int modelId,
|
||||
final RenderBlocks renderer) {
|
||||
public boolean renderWorldBlock(final IBlockAccess world, final int x, final int y, final int z, final Block block,
|
||||
final int modelId, final RenderBlocks renderer) {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
+14
-16
@@ -4,38 +4,36 @@
|
||||
|
||||
package com.kentington.thaumichorizons.client.renderer.block;
|
||||
|
||||
import com.kentington.thaumichorizons.common.ThaumicHorizons;
|
||||
import com.kentington.thaumichorizons.common.tiles.TileVortexStabilizer;
|
||||
import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler;
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.client.renderer.RenderBlocks;
|
||||
import net.minecraft.client.renderer.tileentity.TileEntityRendererDispatcher;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
import net.minecraft.world.IBlockAccess;
|
||||
|
||||
import org.lwjgl.opengl.GL11;
|
||||
import org.lwjgl.opengl.GL12;
|
||||
|
||||
import com.kentington.thaumichorizons.common.ThaumicHorizons;
|
||||
import com.kentington.thaumichorizons.common.tiles.TileVortexStabilizer;
|
||||
|
||||
import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler;
|
||||
import thaumcraft.client.renderers.block.BlockRenderer;
|
||||
|
||||
public class BlockVortexStabilizerRender extends BlockRenderer implements ISimpleBlockRenderingHandler {
|
||||
public void renderInventoryBlock(
|
||||
final Block block, final int metadata, final int modelId, final RenderBlocks renderer) {
|
||||
|
||||
public void renderInventoryBlock(final Block block, final int metadata, final int modelId,
|
||||
final RenderBlocks renderer) {
|
||||
GL11.glPushMatrix();
|
||||
GL11.glRotatef(90.0f, 0.0f, 1.0f, 0.0f);
|
||||
GL11.glTranslatef(-0.5f, -0.5f, -0.5f);
|
||||
final TileVortexStabilizer tc = new TileVortexStabilizer();
|
||||
tc.blockMetadata = metadata;
|
||||
TileEntityRendererDispatcher.instance.renderTileEntityAt((TileEntity) tc, 0.0, 0.0, 0.0, 0.0f);
|
||||
GL11.glEnable(32826);
|
||||
TileEntityRendererDispatcher.instance.renderTileEntityAt(tc, 0.0, 0.0, 0.0, 0.0f);
|
||||
GL11.glEnable(GL12.GL_RESCALE_NORMAL);
|
||||
GL11.glPopMatrix();
|
||||
}
|
||||
|
||||
public boolean renderWorldBlock(
|
||||
final IBlockAccess world,
|
||||
final int x,
|
||||
final int y,
|
||||
final int z,
|
||||
final Block block,
|
||||
final int modelId,
|
||||
final RenderBlocks renderer) {
|
||||
public boolean renderWorldBlock(final IBlockAccess world, final int x, final int y, final int z, final Block block,
|
||||
final int modelId, final RenderBlocks renderer) {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
+13
-14
@@ -4,7 +4,6 @@
|
||||
|
||||
package com.kentington.thaumichorizons.client.renderer.entity;
|
||||
|
||||
import com.kentington.thaumichorizons.common.ThaumicHorizons;
|
||||
import net.minecraft.client.renderer.Tessellator;
|
||||
import net.minecraft.client.renderer.entity.RenderSnowball;
|
||||
import net.minecraft.client.renderer.texture.TextureMap;
|
||||
@@ -14,9 +13,14 @@ import net.minecraft.item.Item;
|
||||
import net.minecraft.potion.PotionHelper;
|
||||
import net.minecraft.util.IIcon;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
|
||||
import org.lwjgl.opengl.GL11;
|
||||
import org.lwjgl.opengl.GL12;
|
||||
|
||||
import com.kentington.thaumichorizons.common.ThaumicHorizons;
|
||||
|
||||
public class BlastPhialRender extends RenderSnowball {
|
||||
|
||||
Item item;
|
||||
|
||||
public BlastPhialRender() {
|
||||
@@ -24,18 +28,13 @@ public class BlastPhialRender extends RenderSnowball {
|
||||
this.item = ThaumicHorizons.itemSyringeInjection;
|
||||
}
|
||||
|
||||
public void doRender(
|
||||
final Entity p_76986_1_,
|
||||
final double p_76986_2_,
|
||||
final double p_76986_4_,
|
||||
final double p_76986_6_,
|
||||
final float p_76986_8_,
|
||||
final float p_76986_9_) {
|
||||
public void doRender(final Entity p_76986_1_, final double p_76986_2_, final double p_76986_4_,
|
||||
final double p_76986_6_, final float p_76986_8_, final float p_76986_9_) {
|
||||
final IIcon iicon = this.item.getIconFromDamage(1);
|
||||
if (iicon != null) {
|
||||
GL11.glPushMatrix();
|
||||
GL11.glTranslatef((float) p_76986_2_, (float) p_76986_4_, (float) p_76986_6_);
|
||||
GL11.glEnable(32826);
|
||||
GL11.glEnable(GL12.GL_RESCALE_NORMAL);
|
||||
GL11.glScalef(0.5f, 0.5f, 0.5f);
|
||||
this.bindEntityTexture(p_76986_1_);
|
||||
final Tessellator tessellator = Tessellator.instance;
|
||||
@@ -48,7 +47,7 @@ public class BlastPhialRender extends RenderSnowball {
|
||||
this.func_77026_a(tessellator, iicon);
|
||||
GL11.glPopMatrix();
|
||||
GL11.glColor3f(1.0f, 1.0f, 1.0f);
|
||||
GL11.glDisable(32826);
|
||||
GL11.glDisable(GL12.GL_RESCALE_NORMAL);
|
||||
GL11.glPopMatrix();
|
||||
}
|
||||
}
|
||||
@@ -65,10 +64,10 @@ public class BlastPhialRender extends RenderSnowball {
|
||||
GL11.glRotatef(-this.renderManager.playerViewX, 1.0f, 0.0f, 0.0f);
|
||||
p_77026_1_.startDrawingQuads();
|
||||
p_77026_1_.setNormal(0.0f, 1.0f, 0.0f);
|
||||
p_77026_1_.addVertexWithUV((double) (0.0f - f6), (double) (0.0f - f7), 0.0, (double) f, (double) f4);
|
||||
p_77026_1_.addVertexWithUV((double) (f5 - f6), (double) (0.0f - f7), 0.0, (double) f2, (double) f4);
|
||||
p_77026_1_.addVertexWithUV((double) (f5 - f6), (double) (f5 - f7), 0.0, (double) f2, (double) f3);
|
||||
p_77026_1_.addVertexWithUV((double) (0.0f - f6), (double) (f5 - f7), 0.0, (double) f, (double) f3);
|
||||
p_77026_1_.addVertexWithUV(0.0f - f6, 0.0f - f7, 0.0, f, f4);
|
||||
p_77026_1_.addVertexWithUV(f5 - f6, 0.0f - f7, 0.0, f2, f4);
|
||||
p_77026_1_.addVertexWithUV(f5 - f6, f5 - f7, 0.0, f2, f3);
|
||||
p_77026_1_.addVertexWithUV(0.0f - f6, f5 - f7, 0.0, f, f3);
|
||||
p_77026_1_.draw();
|
||||
}
|
||||
|
||||
|
||||
+4
-9
@@ -9,26 +9,21 @@ import net.minecraft.client.model.ModelRenderer;
|
||||
import net.minecraft.entity.Entity;
|
||||
|
||||
public class ModelAlchemite extends ModelBase {
|
||||
|
||||
ModelRenderer Shape1;
|
||||
|
||||
public ModelAlchemite() {
|
||||
this.textureWidth = 64;
|
||||
this.textureHeight = 32;
|
||||
(this.Shape1 = new ModelRenderer((ModelBase) this, 0, 0)).addBox(0.0f, 0.0f, 0.0f, 16, 16, 16);
|
||||
(this.Shape1 = new ModelRenderer(this, 0, 0)).addBox(0.0f, 0.0f, 0.0f, 16, 16, 16);
|
||||
this.Shape1.setRotationPoint(-8.0f, 8.0f, -8.0f);
|
||||
this.Shape1.setTextureSize(64, 32);
|
||||
this.Shape1.mirror = true;
|
||||
this.setRotation(this.Shape1, 0.0f, 0.0f, 0.0f);
|
||||
}
|
||||
|
||||
public void render(
|
||||
final Entity entity,
|
||||
final float f,
|
||||
final float f1,
|
||||
final float f2,
|
||||
final float f3,
|
||||
final float f4,
|
||||
final float f5) {
|
||||
public void render(final Entity entity, final float f, final float f1, final float f2, final float f3,
|
||||
final float f4, final float f5) {
|
||||
super.render(entity, f, f1, f2, f3, f4, f5);
|
||||
this.Shape1.render(f5);
|
||||
}
|
||||
|
||||
+24
-26
@@ -4,17 +4,20 @@
|
||||
|
||||
package com.kentington.thaumichorizons.client.renderer.entity;
|
||||
|
||||
import com.kentington.thaumichorizons.common.ThaumicHorizons;
|
||||
import com.kentington.thaumichorizons.common.entities.EntityAlchemitePrimed;
|
||||
import net.minecraft.client.renderer.RenderBlocks;
|
||||
import net.minecraft.client.renderer.entity.RenderEntity;
|
||||
import net.minecraft.client.renderer.texture.TextureMap;
|
||||
import net.minecraft.entity.Entity;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
|
||||
import org.lwjgl.opengl.GL11;
|
||||
|
||||
import com.kentington.thaumichorizons.common.ThaumicHorizons;
|
||||
import com.kentington.thaumichorizons.common.entities.EntityAlchemitePrimed;
|
||||
|
||||
public class RenderAlchemitePrimed extends RenderEntity {
|
||||
private RenderBlocks blockRenderer;
|
||||
|
||||
private final RenderBlocks blockRenderer;
|
||||
|
||||
public RenderAlchemitePrimed() {
|
||||
this.blockRenderer = new RenderBlocks();
|
||||
@@ -29,13 +32,8 @@ public class RenderAlchemitePrimed extends RenderEntity {
|
||||
return TextureMap.locationBlocksTexture;
|
||||
}
|
||||
|
||||
public void doRenderStuff(
|
||||
final EntityAlchemitePrimed entity,
|
||||
final double p_76986_2_,
|
||||
final double p_76986_4_,
|
||||
final double p_76986_6_,
|
||||
final float p_76986_8_,
|
||||
final float p_76986_9_) {
|
||||
public void doRenderStuff(final EntityAlchemitePrimed entity, final double p_76986_2_, final double p_76986_4_,
|
||||
final double p_76986_6_, final float p_76986_8_, final float p_76986_9_) {
|
||||
GL11.glPushMatrix();
|
||||
GL11.glTranslatef((float) p_76986_2_, (float) p_76986_4_, (float) p_76986_6_);
|
||||
if (entity.fuse - p_76986_9_ + 1.0f < 10.0f) {
|
||||
@@ -52,31 +50,31 @@ public class RenderAlchemitePrimed extends RenderEntity {
|
||||
GL11.glScalef(f3, f3, f3);
|
||||
}
|
||||
float f2 = (1.0f - (entity.fuse - p_76986_9_ + 1.0f) / 100.0f) * 0.8f;
|
||||
this.bindEntityTexture((Entity) entity);
|
||||
this.bindEntityTexture(entity);
|
||||
this.blockRenderer.renderBlockAsItem(ThaumicHorizons.blockAlchemite, 0, entity.getBrightness(p_76986_9_));
|
||||
if (entity.fuse / 5 % 2 == 0) {
|
||||
GL11.glDisable(3553);
|
||||
GL11.glDisable(2896);
|
||||
GL11.glEnable(3042);
|
||||
GL11.glBlendFunc(770, 772);
|
||||
GL11.glDisable(GL11.GL_TEXTURE_2D);
|
||||
GL11.glDisable(GL11.GL_LIGHTING);
|
||||
GL11.glEnable(GL11.GL_BLEND);
|
||||
GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_DST_ALPHA);
|
||||
GL11.glColor4f(1.0f, 1.0f, 1.0f, f2);
|
||||
this.blockRenderer.renderBlockAsItem(ThaumicHorizons.blockAlchemite, 0, 1.0f);
|
||||
GL11.glColor4f(1.0f, 1.0f, 1.0f, 1.0f);
|
||||
GL11.glDisable(3042);
|
||||
GL11.glEnable(2896);
|
||||
GL11.glEnable(3553);
|
||||
GL11.glDisable(GL11.GL_BLEND);
|
||||
GL11.glEnable(GL11.GL_LIGHTING);
|
||||
GL11.glEnable(GL11.GL_TEXTURE_2D);
|
||||
}
|
||||
GL11.glPopMatrix();
|
||||
}
|
||||
|
||||
public void doRender(
|
||||
final Entity p_76986_1_,
|
||||
final double p_76986_2_,
|
||||
final double p_76986_4_,
|
||||
final double p_76986_6_,
|
||||
final float p_76986_8_,
|
||||
final float p_76986_9_) {
|
||||
public void doRender(final Entity p_76986_1_, final double p_76986_2_, final double p_76986_4_,
|
||||
final double p_76986_6_, final float p_76986_8_, final float p_76986_9_) {
|
||||
this.doRenderStuff(
|
||||
(EntityAlchemitePrimed) p_76986_1_, p_76986_2_, p_76986_4_, p_76986_6_, p_76986_8_, p_76986_9_);
|
||||
(EntityAlchemitePrimed) p_76986_1_,
|
||||
p_76986_2_,
|
||||
p_76986_4_,
|
||||
p_76986_6_,
|
||||
p_76986_8_,
|
||||
p_76986_9_);
|
||||
}
|
||||
}
|
||||
+3
-1
@@ -4,12 +4,14 @@
|
||||
|
||||
package com.kentington.thaumichorizons.client.renderer.entity;
|
||||
|
||||
import com.kentington.thaumichorizons.common.entities.EntityBoatGreatwood;
|
||||
import net.minecraft.client.renderer.entity.RenderBoat;
|
||||
import net.minecraft.entity.Entity;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
|
||||
import com.kentington.thaumichorizons.common.entities.EntityBoatGreatwood;
|
||||
|
||||
public class RenderBoatGreatwood extends RenderBoat {
|
||||
|
||||
private static final ResourceLocation boatTextures;
|
||||
|
||||
protected ResourceLocation getEntityTexture(final EntityBoatGreatwood p_110775_1_) {
|
||||
|
||||
+3
-1
@@ -4,12 +4,14 @@
|
||||
|
||||
package com.kentington.thaumichorizons.client.renderer.entity;
|
||||
|
||||
import com.kentington.thaumichorizons.common.entities.EntityBoatThaumium;
|
||||
import net.minecraft.client.renderer.entity.RenderBoat;
|
||||
import net.minecraft.entity.Entity;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
|
||||
import com.kentington.thaumichorizons.common.entities.EntityBoatThaumium;
|
||||
|
||||
public class RenderBoatThaumium extends RenderBoat {
|
||||
|
||||
private static final ResourceLocation boatTextures;
|
||||
|
||||
protected ResourceLocation getEntityTexture(final EntityBoatThaumium p_110775_1_) {
|
||||
|
||||
+1
@@ -10,6 +10,7 @@ import net.minecraft.entity.passive.EntityCow;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
|
||||
public class RenderChocolateCow extends RenderCow {
|
||||
|
||||
private static final ResourceLocation cowTextures;
|
||||
|
||||
public RenderChocolateCow(final ModelBase p_i1253_1_, final float p_i1253_2_) {
|
||||
|
||||
+8
-5
@@ -4,14 +4,17 @@
|
||||
|
||||
package com.kentington.thaumichorizons.client.renderer.entity;
|
||||
|
||||
import com.google.common.collect.Maps;
|
||||
import java.util.Map;
|
||||
|
||||
import net.minecraft.client.model.ModelBase;
|
||||
import net.minecraft.client.renderer.entity.RenderHorse;
|
||||
import net.minecraft.entity.passive.EntityHorse;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
|
||||
import com.google.common.collect.Maps;
|
||||
|
||||
public class RenderEndersteed extends RenderHorse {
|
||||
|
||||
ResourceLocation enderTex;
|
||||
ResourceLocation enderTexIron;
|
||||
ResourceLocation enderTexGold;
|
||||
@@ -28,16 +31,16 @@ public class RenderEndersteed extends RenderHorse {
|
||||
|
||||
protected ResourceLocation getEntityTexture(final EntityHorse p_110775_1_) {
|
||||
switch (p_110775_1_.func_110241_cb()) {
|
||||
case 1: {
|
||||
case 1 -> {
|
||||
return this.enderTexIron;
|
||||
}
|
||||
case 2: {
|
||||
case 2 -> {
|
||||
return this.enderTexGold;
|
||||
}
|
||||
case 3: {
|
||||
case 3 -> {
|
||||
return this.enderTexDiamond;
|
||||
}
|
||||
default: {
|
||||
default -> {
|
||||
return this.enderTex;
|
||||
}
|
||||
}
|
||||
|
||||
+13
-30
@@ -4,7 +4,6 @@
|
||||
|
||||
package com.kentington.thaumichorizons.client.renderer.entity;
|
||||
|
||||
import com.kentington.thaumichorizons.common.entities.EntityFamiliar;
|
||||
import net.minecraft.client.model.ModelBase;
|
||||
import net.minecraft.client.renderer.entity.RenderOcelot;
|
||||
import net.minecraft.entity.Entity;
|
||||
@@ -12,9 +11,13 @@ import net.minecraft.entity.EntityLiving;
|
||||
import net.minecraft.entity.EntityLivingBase;
|
||||
import net.minecraft.entity.passive.EntityOcelot;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
|
||||
import com.kentington.thaumichorizons.common.entities.EntityFamiliar;
|
||||
|
||||
import thaumcraft.common.Thaumcraft;
|
||||
|
||||
public class RenderFamiliar extends RenderOcelot {
|
||||
|
||||
ResourceLocation rl;
|
||||
|
||||
public RenderFamiliar(final ModelBase p_i1264_1_, final float p_i1264_2_) {
|
||||
@@ -26,14 +29,9 @@ public class RenderFamiliar extends RenderOcelot {
|
||||
return this.rl;
|
||||
}
|
||||
|
||||
public void doRender(
|
||||
final EntityFamiliar p_76986_1_,
|
||||
final double p_76986_2_,
|
||||
final double p_76986_4_,
|
||||
final double p_76986_6_,
|
||||
final float p_76986_8_,
|
||||
final float p_76986_9_) {
|
||||
super.doRender((EntityOcelot) p_76986_1_, p_76986_2_, p_76986_4_, p_76986_6_, p_76986_8_, p_76986_9_);
|
||||
public void doRender(final EntityFamiliar p_76986_1_, final double p_76986_2_, final double p_76986_4_,
|
||||
final double p_76986_6_, final float p_76986_8_, final float p_76986_9_) {
|
||||
super.doRender(p_76986_1_, p_76986_2_, p_76986_4_, p_76986_6_, p_76986_8_, p_76986_9_);
|
||||
if (p_76986_1_.worldObj.rand.nextFloat() > 0.97f) {
|
||||
final float angle = (float) (p_76986_1_.worldObj.rand.nextFloat() * 2.0f * 3.141592653589793);
|
||||
Thaumcraft.proxy.sparkle(
|
||||
@@ -46,33 +44,18 @@ public class RenderFamiliar extends RenderOcelot {
|
||||
}
|
||||
}
|
||||
|
||||
public void doRender(
|
||||
final Entity p_76986_1_,
|
||||
final double p_76986_2_,
|
||||
final double p_76986_4_,
|
||||
final double p_76986_6_,
|
||||
final float p_76986_8_,
|
||||
final float p_76986_9_) {
|
||||
public void doRender(final Entity p_76986_1_, final double p_76986_2_, final double p_76986_4_,
|
||||
final double p_76986_6_, final float p_76986_8_, final float p_76986_9_) {
|
||||
this.doRender((EntityFamiliar) p_76986_1_, p_76986_2_, p_76986_4_, p_76986_6_, p_76986_8_, p_76986_9_);
|
||||
}
|
||||
|
||||
public void doRender(
|
||||
final EntityLiving p_76986_1_,
|
||||
final double p_76986_2_,
|
||||
final double p_76986_4_,
|
||||
final double p_76986_6_,
|
||||
final float p_76986_8_,
|
||||
final float p_76986_9_) {
|
||||
public void doRender(final EntityLiving p_76986_1_, final double p_76986_2_, final double p_76986_4_,
|
||||
final double p_76986_6_, final float p_76986_8_, final float p_76986_9_) {
|
||||
this.doRender((EntityFamiliar) p_76986_1_, p_76986_2_, p_76986_4_, p_76986_6_, p_76986_8_, p_76986_9_);
|
||||
}
|
||||
|
||||
public void doRender(
|
||||
final EntityLivingBase p_76986_1_,
|
||||
final double p_76986_2_,
|
||||
final double p_76986_4_,
|
||||
final double p_76986_6_,
|
||||
final float p_76986_8_,
|
||||
final float p_76986_9_) {
|
||||
public void doRender(final EntityLivingBase p_76986_1_, final double p_76986_2_, final double p_76986_4_,
|
||||
final double p_76986_6_, final float p_76986_8_, final float p_76986_9_) {
|
||||
this.doRender((EntityFamiliar) p_76986_1_, p_76986_2_, p_76986_4_, p_76986_6_, p_76986_8_, p_76986_9_);
|
||||
}
|
||||
}
|
||||
+13
-30
@@ -4,7 +4,6 @@
|
||||
|
||||
package com.kentington.thaumichorizons.client.renderer.entity;
|
||||
|
||||
import com.kentington.thaumichorizons.common.entities.EntityGoldChicken;
|
||||
import net.minecraft.client.model.ModelBase;
|
||||
import net.minecraft.client.renderer.entity.RenderChicken;
|
||||
import net.minecraft.entity.Entity;
|
||||
@@ -12,9 +11,13 @@ import net.minecraft.entity.EntityLiving;
|
||||
import net.minecraft.entity.EntityLivingBase;
|
||||
import net.minecraft.entity.passive.EntityChicken;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
|
||||
import com.kentington.thaumichorizons.common.entities.EntityGoldChicken;
|
||||
|
||||
import thaumcraft.common.Thaumcraft;
|
||||
|
||||
public class RenderGoldChicken extends RenderChicken {
|
||||
|
||||
ResourceLocation rl;
|
||||
|
||||
public RenderGoldChicken(final ModelBase p_i1252_1_, final float p_i1252_2_) {
|
||||
@@ -26,14 +29,9 @@ public class RenderGoldChicken extends RenderChicken {
|
||||
return this.rl;
|
||||
}
|
||||
|
||||
public void doRender(
|
||||
final EntityGoldChicken p_76986_1_,
|
||||
final double p_76986_2_,
|
||||
final double p_76986_4_,
|
||||
final double p_76986_6_,
|
||||
final float p_76986_8_,
|
||||
final float p_76986_9_) {
|
||||
super.doRender((EntityChicken) p_76986_1_, p_76986_2_, p_76986_4_, p_76986_6_, p_76986_8_, p_76986_9_);
|
||||
public void doRender(final EntityGoldChicken p_76986_1_, final double p_76986_2_, final double p_76986_4_,
|
||||
final double p_76986_6_, final float p_76986_8_, final float p_76986_9_) {
|
||||
super.doRender(p_76986_1_, p_76986_2_, p_76986_4_, p_76986_6_, p_76986_8_, p_76986_9_);
|
||||
if (p_76986_1_.worldObj.rand.nextFloat() > 0.95f) {
|
||||
final float angle = (float) (p_76986_1_.worldObj.rand.nextFloat() * 2.0f * 3.141592653589793);
|
||||
Thaumcraft.proxy.sparkle(
|
||||
@@ -46,33 +44,18 @@ public class RenderGoldChicken extends RenderChicken {
|
||||
}
|
||||
}
|
||||
|
||||
public void doRender(
|
||||
final Entity p_76986_1_,
|
||||
final double p_76986_2_,
|
||||
final double p_76986_4_,
|
||||
final double p_76986_6_,
|
||||
final float p_76986_8_,
|
||||
final float p_76986_9_) {
|
||||
public void doRender(final Entity p_76986_1_, final double p_76986_2_, final double p_76986_4_,
|
||||
final double p_76986_6_, final float p_76986_8_, final float p_76986_9_) {
|
||||
this.doRender((EntityGoldChicken) p_76986_1_, p_76986_2_, p_76986_4_, p_76986_6_, p_76986_8_, p_76986_9_);
|
||||
}
|
||||
|
||||
public void doRender(
|
||||
final EntityLiving p_76986_1_,
|
||||
final double p_76986_2_,
|
||||
final double p_76986_4_,
|
||||
final double p_76986_6_,
|
||||
final float p_76986_8_,
|
||||
final float p_76986_9_) {
|
||||
public void doRender(final EntityLiving p_76986_1_, final double p_76986_2_, final double p_76986_4_,
|
||||
final double p_76986_6_, final float p_76986_8_, final float p_76986_9_) {
|
||||
this.doRender((EntityGoldChicken) p_76986_1_, p_76986_2_, p_76986_4_, p_76986_6_, p_76986_8_, p_76986_9_);
|
||||
}
|
||||
|
||||
public void doRender(
|
||||
final EntityLivingBase p_76986_1_,
|
||||
final double p_76986_2_,
|
||||
final double p_76986_4_,
|
||||
final double p_76986_6_,
|
||||
final float p_76986_8_,
|
||||
final float p_76986_9_) {
|
||||
public void doRender(final EntityLivingBase p_76986_1_, final double p_76986_2_, final double p_76986_4_,
|
||||
final double p_76986_6_, final float p_76986_8_, final float p_76986_9_) {
|
||||
this.doRender((EntityGoldChicken) p_76986_1_, p_76986_2_, p_76986_4_, p_76986_6_, p_76986_8_, p_76986_9_);
|
||||
}
|
||||
}
|
||||
+29
-43
@@ -4,8 +4,6 @@
|
||||
|
||||
package com.kentington.thaumichorizons.client.renderer.entity;
|
||||
|
||||
import com.kentington.thaumichorizons.client.renderer.model.ModelGolemTH;
|
||||
import com.kentington.thaumichorizons.common.entities.EntityGolemTH;
|
||||
import net.minecraft.client.model.ModelBase;
|
||||
import net.minecraft.client.renderer.ItemRenderer;
|
||||
import net.minecraft.client.renderer.Tessellator;
|
||||
@@ -16,13 +14,19 @@ import net.minecraft.entity.EntityLivingBase;
|
||||
import net.minecraft.init.Blocks;
|
||||
import net.minecraft.util.IIcon;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
|
||||
import org.lwjgl.opengl.GL11;
|
||||
|
||||
import com.kentington.thaumichorizons.client.renderer.model.ModelGolemTH;
|
||||
import com.kentington.thaumichorizons.common.entities.EntityGolemTH;
|
||||
|
||||
import thaumcraft.client.lib.UtilsFX;
|
||||
import thaumcraft.client.renderers.entity.RenderGolemBase;
|
||||
import thaumcraft.client.renderers.models.entities.ModelGolemAccessories;
|
||||
import thaumcraft.common.config.ConfigItems;
|
||||
|
||||
public class RenderGolemTH extends RenderGolemBase {
|
||||
|
||||
ResourceLocation voidGolem;
|
||||
ModelBase damage;
|
||||
ModelBase accessories;
|
||||
@@ -30,17 +34,16 @@ public class RenderGolemTH extends RenderGolemBase {
|
||||
public RenderGolemTH(final ModelBase arg0) {
|
||||
super(arg0);
|
||||
this.voidGolem = new ResourceLocation("thaumichorizons", "textures/models/golem_void.png");
|
||||
this.accessories = (ModelBase) new ModelGolemAccessories(0.0f, 30.0f);
|
||||
this.accessories = new ModelGolemAccessories(0.0f, 30.0f);
|
||||
if (arg0 instanceof ModelGolemTH) {
|
||||
final ModelGolemTH mg = new ModelGolemTH(false);
|
||||
mg.pass = 2;
|
||||
this.damage = (ModelBase) mg;
|
||||
this.damage = mg;
|
||||
}
|
||||
}
|
||||
|
||||
protected ResourceLocation getEntityTexture(final Entity entity) {
|
||||
if (entity instanceof EntityGolemTH) {
|
||||
final EntityGolemTH golem = (EntityGolemTH) entity;
|
||||
if (entity instanceof final EntityGolemTH golem) {
|
||||
if (golem.texture == null && golem.blocky != null && golem.blocky != Blocks.air) {
|
||||
golem.loadTexture();
|
||||
} else if (golem.texture == null) {
|
||||
@@ -51,33 +54,18 @@ public class RenderGolemTH extends RenderGolemBase {
|
||||
return null;
|
||||
}
|
||||
|
||||
public void render(
|
||||
final EntityGolemTH e,
|
||||
final double par2,
|
||||
final double par4,
|
||||
final double par6,
|
||||
final float par8,
|
||||
public void render(final EntityGolemTH e, final double par2, final double par4, final double par6, final float par8,
|
||||
final float par9) {
|
||||
super.doRender((EntityLiving) e, par2, par4, par6, par8, par9);
|
||||
super.doRender(e, par2, par4, par6, par8, par9);
|
||||
}
|
||||
|
||||
public void doRender(
|
||||
final EntityLiving par1EntityLiving,
|
||||
final double par2,
|
||||
final double par4,
|
||||
final double par6,
|
||||
final float par8,
|
||||
final float par9) {
|
||||
public void doRender(final EntityLiving par1EntityLiving, final double par2, final double par4, final double par6,
|
||||
final float par8, final float par9) {
|
||||
this.render((EntityGolemTH) par1EntityLiving, par2, par4, par6, par8, par9);
|
||||
}
|
||||
|
||||
public void doRender(
|
||||
final Entity par1Entity,
|
||||
final double par2,
|
||||
final double par4,
|
||||
final double par6,
|
||||
final float par8,
|
||||
final float par9) {
|
||||
public void doRender(final Entity par1Entity, final double par2, final double par4, final double par6,
|
||||
final float par8, final float par9) {
|
||||
this.render((EntityGolemTH) par1Entity, par2, par4, par6, par8, par9);
|
||||
}
|
||||
|
||||
@@ -91,30 +79,29 @@ public class RenderGolemTH extends RenderGolemBase {
|
||||
GL11.glScaled(0.175, 0.175, 0.175);
|
||||
GL11.glRotatef(180.0f, 0.0f, 1.0f, 0.0f);
|
||||
final Tessellator tessellator = Tessellator.instance;
|
||||
final IIcon icon =
|
||||
ConfigItems.itemGolemCore.getIconFromDamage((int) ((EntityGolemTH) entity).getCore());
|
||||
final IIcon icon = ConfigItems.itemGolemCore.getIconFromDamage(((EntityGolemTH) entity).getCore());
|
||||
final float f1 = icon.getMaxU();
|
||||
final float f2 = icon.getMinV();
|
||||
final float f3 = icon.getMinU();
|
||||
final float f4 = icon.getMaxV();
|
||||
this.renderManager.renderEngine.bindTexture(TextureMap.locationItemsTexture);
|
||||
ItemRenderer.renderItemIn2D(
|
||||
tessellator, f1, f2, f3, f4, icon.getIconWidth(), icon.getIconHeight(), 0.2f);
|
||||
ItemRenderer
|
||||
.renderItemIn2D(tessellator, f1, f2, f3, f4, icon.getIconWidth(), icon.getIconHeight(), 0.2f);
|
||||
GL11.glPopMatrix();
|
||||
}
|
||||
final int upgrades = ((EntityGolemTH) entity).upgrades.length;
|
||||
final float shift = 0.08f;
|
||||
GL11.glPushMatrix();
|
||||
GL11.glEnable(3042);
|
||||
GL11.glBlendFunc(770, 771);
|
||||
GL11.glEnable(GL11.GL_BLEND);
|
||||
GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA);
|
||||
for (int a = 0; a < upgrades; ++a) {
|
||||
GL11.glPushMatrix();
|
||||
GL11.glRotatef(180.0f, 1.0f, 0.0f, 0.0f);
|
||||
GL11.glTranslatef(-0.05f - shift * (upgrades - 1) / 2.0f + shift * a, -1.106f, 0.099f);
|
||||
GL11.glScaled(0.1, 0.1, 0.1);
|
||||
final Tessellator tessellator2 = Tessellator.instance;
|
||||
final IIcon icon2 =
|
||||
ConfigItems.itemGolemUpgrade.getIconFromDamage((int) ((EntityGolemTH) entity).getUpgrade(a));
|
||||
final IIcon icon2 = ConfigItems.itemGolemUpgrade
|
||||
.getIconFromDamage(((EntityGolemTH) entity).getUpgrade(a));
|
||||
final float f5 = icon2.getMaxU();
|
||||
final float f6 = icon2.getMinV();
|
||||
final float f7 = icon2.getMinU();
|
||||
@@ -122,19 +109,18 @@ public class RenderGolemTH extends RenderGolemBase {
|
||||
this.renderManager.renderEngine.bindTexture(TextureMap.locationItemsTexture);
|
||||
tessellator2.startDrawingQuads();
|
||||
tessellator2.setNormal(0.0f, 0.0f, 1.0f);
|
||||
tessellator2.addVertexWithUV(0.0, 0.0, 0.0, (double) f5, (double) f8);
|
||||
tessellator2.addVertexWithUV(1.0, 0.0, 0.0, (double) f7, (double) f8);
|
||||
tessellator2.addVertexWithUV(1.0, 1.0, 0.0, (double) f7, (double) f6);
|
||||
tessellator2.addVertexWithUV(0.0, 1.0, 0.0, (double) f5, (double) f6);
|
||||
tessellator2.addVertexWithUV(0.0, 0.0, 0.0, f5, f8);
|
||||
tessellator2.addVertexWithUV(1.0, 0.0, 0.0, f7, f8);
|
||||
tessellator2.addVertexWithUV(1.0, 1.0, 0.0, f7, f6);
|
||||
tessellator2.addVertexWithUV(0.0, 1.0, 0.0, f5, f6);
|
||||
tessellator2.draw();
|
||||
GL11.glPopMatrix();
|
||||
}
|
||||
GL11.glDisable(3042);
|
||||
GL11.glDisable(GL11.GL_BLEND);
|
||||
GL11.glPopMatrix();
|
||||
} else {
|
||||
if (pass == 1
|
||||
&& (((EntityGolemTH) entity).getGolemDecoration().length() > 0
|
||||
|| ((EntityGolemTH) entity).advanced)) {
|
||||
if (pass == 1 && (((EntityGolemTH) entity).getGolemDecoration().length() > 0
|
||||
|| ((EntityGolemTH) entity).advanced)) {
|
||||
UtilsFX.bindTexture("textures/models/golem_decoration.png");
|
||||
this.setRenderPassModel(this.accessories);
|
||||
return 1;
|
||||
|
||||
+1
@@ -10,6 +10,7 @@ import net.minecraft.entity.passive.EntityOcelot;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
|
||||
public class RenderGravekeeper extends RenderOcelot {
|
||||
|
||||
ResourceLocation rl;
|
||||
|
||||
public RenderGravekeeper(final ModelBase p_i1264_1_, final float p_i1264_2_) {
|
||||
|
||||
+2
@@ -7,9 +7,11 @@ package com.kentington.thaumichorizons.client.renderer.entity;
|
||||
import net.minecraft.client.model.ModelBase;
|
||||
import net.minecraft.client.renderer.entity.RenderOcelot;
|
||||
import net.minecraft.entity.passive.EntityOcelot;
|
||||
|
||||
import org.lwjgl.opengl.GL11;
|
||||
|
||||
public class RenderGuardianPanther extends RenderOcelot {
|
||||
|
||||
public RenderGuardianPanther(final ModelBase p_i1264_1_, final float p_i1264_2_) {
|
||||
super(p_i1264_1_, p_i1264_2_);
|
||||
}
|
||||
|
||||
+24
-26
@@ -4,34 +4,28 @@
|
||||
|
||||
package com.kentington.thaumichorizons.client.renderer.entity;
|
||||
|
||||
import com.kentington.thaumichorizons.common.entities.EntityLightningBoltFinite;
|
||||
import java.util.Random;
|
||||
|
||||
import net.minecraft.client.renderer.Tessellator;
|
||||
import net.minecraft.client.renderer.entity.RenderLightningBolt;
|
||||
import net.minecraft.entity.Entity;
|
||||
|
||||
import org.lwjgl.opengl.GL11;
|
||||
|
||||
public class RenderLightningBoltFinite extends RenderLightningBolt {
|
||||
public void doRender(
|
||||
final Entity p_76986_1_,
|
||||
final double p_76986_2_,
|
||||
final double p_76986_4_,
|
||||
final double p_76986_6_,
|
||||
final float p_76986_8_,
|
||||
final float p_76986_9_) {}
|
||||
import com.kentington.thaumichorizons.common.entities.EntityLightningBoltFinite;
|
||||
|
||||
public void doRender(
|
||||
final EntityLightningBoltFinite p_76986_1_,
|
||||
final double p_76986_2_,
|
||||
final double p_76986_4_,
|
||||
final double p_76986_6_,
|
||||
final float p_76986_8_,
|
||||
final float p_76986_9_) {
|
||||
public class RenderLightningBoltFinite extends RenderLightningBolt {
|
||||
|
||||
public void doRender(final Entity p_76986_1_, final double p_76986_2_, final double p_76986_4_,
|
||||
final double p_76986_6_, final float p_76986_8_, final float p_76986_9_) {}
|
||||
|
||||
public void doRender(final EntityLightningBoltFinite p_76986_1_, final double p_76986_2_, final double p_76986_4_,
|
||||
final double p_76986_6_, final float p_76986_8_, final float p_76986_9_) {
|
||||
final Tessellator tessellator = Tessellator.instance;
|
||||
GL11.glDisable(3553);
|
||||
GL11.glDisable(2896);
|
||||
GL11.glEnable(3042);
|
||||
GL11.glBlendFunc(770, 1);
|
||||
GL11.glDisable(GL11.GL_TEXTURE_2D);
|
||||
GL11.glDisable(GL11.GL_LIGHTING);
|
||||
GL11.glEnable(GL11.GL_BLEND);
|
||||
GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE);
|
||||
final double[] adouble = new double[8];
|
||||
final double[] adouble2 = new double[8];
|
||||
double d3 = 0.0;
|
||||
@@ -69,7 +63,7 @@ public class RenderLightningBoltFinite extends RenderLightningBolt {
|
||||
}
|
||||
tessellator.startDrawing(5);
|
||||
final float f2 = 0.5f;
|
||||
tessellator.setColorRGBA_F(0.9f * f2, 0.9f * f2, 1.0f * f2, 0.3f);
|
||||
tessellator.setColorRGBA_F(0.9f * f2, 0.9f * f2, f2, 0.3f);
|
||||
double d9 = 0.1 + k1 * 0.2;
|
||||
if (j == 0) {
|
||||
d9 *= i2 * 0.1 + 1.0;
|
||||
@@ -96,16 +90,20 @@ public class RenderLightningBoltFinite extends RenderLightningBolt {
|
||||
d14 += d10 * 2.0;
|
||||
}
|
||||
tessellator.addVertex(
|
||||
d13 + d5, p_76986_4_ + p_76986_1_.boltLength / (l - m + 1) * i2 / 2.0, d14 + d6);
|
||||
d13 + d5,
|
||||
p_76986_4_ + p_76986_1_.boltLength / (l - m + 1) * i2 / 2.0,
|
||||
d14 + d6);
|
||||
tessellator.addVertex(
|
||||
d11 + d7, p_76986_4_ + p_76986_1_.boltLength / (l - m + 1) * (i2 + 1) / 2.0, d12 + d8);
|
||||
d11 + d7,
|
||||
p_76986_4_ + p_76986_1_.boltLength / (l - m + 1) * (i2 + 1) / 2.0,
|
||||
d12 + d8);
|
||||
}
|
||||
tessellator.draw();
|
||||
}
|
||||
}
|
||||
}
|
||||
GL11.glDisable(3042);
|
||||
GL11.glEnable(2896);
|
||||
GL11.glEnable(3553);
|
||||
GL11.glDisable(GL11.GL_BLEND);
|
||||
GL11.glEnable(GL11.GL_LIGHTING);
|
||||
GL11.glEnable(GL11.GL_TEXTURE_2D);
|
||||
}
|
||||
}
|
||||
+21
-37
@@ -4,7 +4,6 @@
|
||||
|
||||
package com.kentington.thaumichorizons.client.renderer.entity;
|
||||
|
||||
import com.kentington.thaumichorizons.common.entities.EntityLunarWolf;
|
||||
import net.minecraft.client.model.ModelBase;
|
||||
import net.minecraft.client.renderer.entity.RenderWolf;
|
||||
import net.minecraft.entity.Entity;
|
||||
@@ -12,11 +11,16 @@ import net.minecraft.entity.EntityLiving;
|
||||
import net.minecraft.entity.EntityLivingBase;
|
||||
import net.minecraft.entity.passive.EntityWolf;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
|
||||
import org.lwjgl.opengl.GL11;
|
||||
|
||||
import com.kentington.thaumichorizons.common.entities.EntityLunarWolf;
|
||||
|
||||
import thaumcraft.client.lib.UtilsFX;
|
||||
import thaumcraft.client.renderers.tile.TileNodeRenderer;
|
||||
|
||||
public class RenderLunarWolf extends RenderWolf {
|
||||
|
||||
ResourceLocation wolfTex;
|
||||
|
||||
public RenderLunarWolf(final ModelBase p_i1269_1_, final ModelBase p_i1269_2_, final float p_i1269_3_) {
|
||||
@@ -24,25 +28,20 @@ public class RenderLunarWolf extends RenderWolf {
|
||||
this.wolfTex = new ResourceLocation("thaumichorizons", "textures/entity/lunarwolf.png");
|
||||
}
|
||||
|
||||
public void doRender(
|
||||
final EntityLunarWolf p_76986_1_,
|
||||
final double p_76986_2_,
|
||||
final double p_76986_4_,
|
||||
final double p_76986_6_,
|
||||
final float p_76986_8_,
|
||||
final float p_76986_9_) {
|
||||
super.doRender((EntityLiving) p_76986_1_, p_76986_2_, p_76986_4_, p_76986_6_, p_76986_8_, p_76986_9_);
|
||||
public void doRender(final EntityLunarWolf p_76986_1_, final double p_76986_2_, final double p_76986_4_,
|
||||
final double p_76986_6_, final float p_76986_8_, final float p_76986_9_) {
|
||||
super.doRender(p_76986_1_, p_76986_2_, p_76986_4_, p_76986_6_, p_76986_8_, p_76986_9_);
|
||||
if (p_76986_1_.worldObj.getWorldTime() % 24000L < 12000L) {
|
||||
return;
|
||||
}
|
||||
final float scale = p_76986_1_.worldObj.getCurrentMoonPhaseFactor() * 3.0f;
|
||||
GL11.glPushMatrix();
|
||||
GL11.glAlphaFunc(516, 0.003921569f);
|
||||
GL11.glEnable(3042);
|
||||
GL11.glBlendFunc(770, 1);
|
||||
GL11.glAlphaFunc(GL11.GL_GREATER, 0.003921569f);
|
||||
GL11.glEnable(GL11.GL_BLEND);
|
||||
GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE);
|
||||
GL11.glPushMatrix();
|
||||
GL11.glDepthMask(false);
|
||||
GL11.glDisable(2884);
|
||||
GL11.glDisable(GL11.GL_CULL_FACE);
|
||||
final int i = p_76986_1_.ticksExisted % 32;
|
||||
UtilsFX.bindTexture(TileNodeRenderer.nodetex);
|
||||
UtilsFX.renderFacingStrip(
|
||||
@@ -57,11 +56,11 @@ public class RenderLunarWolf extends RenderWolf {
|
||||
i,
|
||||
p_76986_9_,
|
||||
11197951);
|
||||
GL11.glEnable(2884);
|
||||
GL11.glEnable(GL11.GL_CULL_FACE);
|
||||
GL11.glDepthMask(true);
|
||||
GL11.glPopMatrix();
|
||||
GL11.glDisable(3042);
|
||||
GL11.glAlphaFunc(516, 0.1f);
|
||||
GL11.glDisable(GL11.GL_BLEND);
|
||||
GL11.glAlphaFunc(GL11.GL_GREATER, 0.1f);
|
||||
GL11.glPopMatrix();
|
||||
}
|
||||
|
||||
@@ -77,33 +76,18 @@ public class RenderLunarWolf extends RenderWolf {
|
||||
return this.wolfTex;
|
||||
}
|
||||
|
||||
public void doRender(
|
||||
final Entity p_76986_1_,
|
||||
final double p_76986_2_,
|
||||
final double p_76986_4_,
|
||||
final double p_76986_6_,
|
||||
final float p_76986_8_,
|
||||
final float p_76986_9_) {
|
||||
public void doRender(final Entity p_76986_1_, final double p_76986_2_, final double p_76986_4_,
|
||||
final double p_76986_6_, final float p_76986_8_, final float p_76986_9_) {
|
||||
this.doRender((EntityLunarWolf) p_76986_1_, p_76986_2_, p_76986_4_, p_76986_6_, p_76986_8_, p_76986_9_);
|
||||
}
|
||||
|
||||
public void doRender(
|
||||
final EntityLiving p_76986_1_,
|
||||
final double p_76986_2_,
|
||||
final double p_76986_4_,
|
||||
final double p_76986_6_,
|
||||
final float p_76986_8_,
|
||||
final float p_76986_9_) {
|
||||
public void doRender(final EntityLiving p_76986_1_, final double p_76986_2_, final double p_76986_4_,
|
||||
final double p_76986_6_, final float p_76986_8_, final float p_76986_9_) {
|
||||
this.doRender((EntityLunarWolf) p_76986_1_, p_76986_2_, p_76986_4_, p_76986_6_, p_76986_8_, p_76986_9_);
|
||||
}
|
||||
|
||||
public void doRender(
|
||||
final EntityLivingBase p_76986_1_,
|
||||
final double p_76986_2_,
|
||||
final double p_76986_4_,
|
||||
final double p_76986_6_,
|
||||
final float p_76986_8_,
|
||||
final float p_76986_9_) {
|
||||
public void doRender(final EntityLivingBase p_76986_1_, final double p_76986_2_, final double p_76986_4_,
|
||||
final double p_76986_6_, final float p_76986_8_, final float p_76986_9_) {
|
||||
this.doRender((EntityLunarWolf) p_76986_1_, p_76986_2_, p_76986_4_, p_76986_6_, p_76986_8_, p_76986_9_);
|
||||
}
|
||||
}
|
||||
+1
@@ -10,6 +10,7 @@ import net.minecraft.entity.monster.EntitySlime;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
|
||||
public class RenderMeatSlime extends RenderSlime {
|
||||
|
||||
private static final ResourceLocation slimeTextures;
|
||||
|
||||
protected ResourceLocation getEntityTexture(final EntitySlime p_110775_1_) {
|
||||
|
||||
+1
@@ -10,6 +10,7 @@ import net.minecraft.entity.monster.EntitySlime;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
|
||||
public class RenderMedSlime extends RenderSlime {
|
||||
|
||||
private static final ResourceLocation slimeTextures;
|
||||
|
||||
protected ResourceLocation getEntityTexture(final EntitySlime p_110775_1_) {
|
||||
|
||||
+1
@@ -10,6 +10,7 @@ import net.minecraft.entity.monster.EntitySlime;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
|
||||
public class RenderMercurialSlime extends RenderSlime {
|
||||
|
||||
private static final ResourceLocation slimeTextures;
|
||||
|
||||
protected ResourceLocation getEntityTexture(final EntitySlime p_110775_1_) {
|
||||
|
||||
+3
-1
@@ -4,14 +4,16 @@
|
||||
|
||||
package com.kentington.thaumichorizons.client.renderer.entity;
|
||||
|
||||
import com.kentington.thaumichorizons.common.entities.EntityNetherHound;
|
||||
import net.minecraft.client.model.ModelBase;
|
||||
import net.minecraft.client.renderer.entity.RenderWolf;
|
||||
import net.minecraft.entity.Entity;
|
||||
import net.minecraft.entity.passive.EntityWolf;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
|
||||
import com.kentington.thaumichorizons.common.entities.EntityNetherHound;
|
||||
|
||||
public class RenderNetherHound extends RenderWolf {
|
||||
|
||||
ResourceLocation wolfTex;
|
||||
|
||||
public RenderNetherHound(final ModelBase p_i1269_1_, final ModelBase p_i1269_2_, final float p_i1269_3_) {
|
||||
|
||||
+8
-5
@@ -4,14 +4,17 @@
|
||||
|
||||
package com.kentington.thaumichorizons.client.renderer.entity;
|
||||
|
||||
import com.google.common.collect.Maps;
|
||||
import java.util.Map;
|
||||
|
||||
import net.minecraft.client.model.ModelBase;
|
||||
import net.minecraft.client.renderer.entity.RenderHorse;
|
||||
import net.minecraft.entity.passive.EntityHorse;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
|
||||
import com.google.common.collect.Maps;
|
||||
|
||||
public class RenderNightmare extends RenderHorse {
|
||||
|
||||
ResourceLocation enderTex;
|
||||
ResourceLocation enderTexIron;
|
||||
ResourceLocation enderTexGold;
|
||||
@@ -28,16 +31,16 @@ public class RenderNightmare extends RenderHorse {
|
||||
|
||||
protected ResourceLocation getEntityTexture(final EntityHorse p_110775_1_) {
|
||||
switch (p_110775_1_.func_110241_cb()) {
|
||||
case 1: {
|
||||
case 1 -> {
|
||||
return this.enderTexIron;
|
||||
}
|
||||
case 2: {
|
||||
case 2 -> {
|
||||
return this.enderTexGold;
|
||||
}
|
||||
case 3: {
|
||||
case 3 -> {
|
||||
return this.enderTexDiamond;
|
||||
}
|
||||
default: {
|
||||
default -> {
|
||||
return this.enderTex;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -10,6 +10,7 @@ import net.minecraft.entity.passive.EntityPig;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
|
||||
public class RenderOreBoar extends RenderPig {
|
||||
|
||||
private static final ResourceLocation pigTextures;
|
||||
|
||||
public RenderOreBoar(final ModelBase p_i1265_1_, final ModelBase p_i1265_2_, final float p_i1265_3_) {
|
||||
|
||||
+1
@@ -10,6 +10,7 @@ import net.minecraft.entity.passive.EntityChicken;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
|
||||
public class RenderScholarChicken extends RenderChicken {
|
||||
|
||||
ResourceLocation rl;
|
||||
|
||||
public RenderScholarChicken(final ModelBase p_i1252_1_, final float p_i1252_2_) {
|
||||
|
||||
+3
-1
@@ -4,14 +4,16 @@
|
||||
|
||||
package com.kentington.thaumichorizons.client.renderer.entity;
|
||||
|
||||
import com.kentington.thaumichorizons.common.entities.EntitySeawolf;
|
||||
import net.minecraft.client.model.ModelBase;
|
||||
import net.minecraft.client.renderer.entity.RenderWolf;
|
||||
import net.minecraft.entity.Entity;
|
||||
import net.minecraft.entity.passive.EntityWolf;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
|
||||
import com.kentington.thaumichorizons.common.entities.EntitySeawolf;
|
||||
|
||||
public class RenderSeawolf extends RenderWolf {
|
||||
|
||||
ResourceLocation wolfTex;
|
||||
|
||||
public RenderSeawolf(final ModelBase p_i1269_1_, final ModelBase p_i1269_2_, final float p_i1269_3_) {
|
||||
|
||||
+3
-1
@@ -4,12 +4,14 @@
|
||||
|
||||
package com.kentington.thaumichorizons.client.renderer.entity;
|
||||
|
||||
import com.kentington.thaumichorizons.common.entities.EntitySheeder;
|
||||
import net.minecraft.client.renderer.entity.RenderSpider;
|
||||
import net.minecraft.entity.monster.EntitySpider;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
|
||||
import com.kentington.thaumichorizons.common.entities.EntitySheeder;
|
||||
|
||||
public class RenderSheeder extends RenderSpider {
|
||||
|
||||
private static final ResourceLocation spiderTextures;
|
||||
private static final ResourceLocation spiderEyesTextures;
|
||||
|
||||
|
||||
+14
-31
@@ -11,10 +11,13 @@ import net.minecraft.client.renderer.entity.Render;
|
||||
import net.minecraft.entity.Entity;
|
||||
import net.minecraft.entity.EntityLiving;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
|
||||
import org.lwjgl.opengl.GL11;
|
||||
|
||||
import thaumcraft.client.lib.UtilsFX;
|
||||
|
||||
public class RenderSoul extends Render {
|
||||
|
||||
int size1;
|
||||
int size2;
|
||||
|
||||
@@ -24,8 +27,8 @@ public class RenderSoul extends Render {
|
||||
this.shadowSize = 0.0f;
|
||||
}
|
||||
|
||||
public void renderEntityAt(
|
||||
final Entity entity, final double x, final double y, final double z, final float fq, final float pticks) {
|
||||
public void renderEntityAt(final Entity entity, final double x, final double y, final double z, final float fq,
|
||||
final float pticks) {
|
||||
if (((EntityLiving) entity).getHealth() <= 0.0f) {
|
||||
return;
|
||||
}
|
||||
@@ -41,46 +44,26 @@ public class RenderSoul extends Render {
|
||||
final Tessellator tessellator = Tessellator.instance;
|
||||
GL11.glPushMatrix();
|
||||
GL11.glDepthMask(false);
|
||||
GL11.glEnable(3042);
|
||||
GL11.glBlendFunc(770, 1);
|
||||
GL11.glEnable(GL11.GL_BLEND);
|
||||
GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE);
|
||||
UtilsFX.bindTexture("thaumichorizons", "textures/misc/soul.png");
|
||||
final int i = entity.ticksExisted % 16;
|
||||
final float x2 = i / this.size1;
|
||||
final float x3 = (i + 1) / this.size1;
|
||||
tessellator.startDrawingQuads();
|
||||
tessellator.setBrightness(240);
|
||||
tessellator.addVertexWithUV(
|
||||
(double) (f7 - f1 * f6 - f4 * f6),
|
||||
(double) (f8 - f2 * f6),
|
||||
(double) (f9 - f3 * f6 - f5 * f6),
|
||||
(double) x3,
|
||||
0.0);
|
||||
tessellator.addVertexWithUV(
|
||||
(double) (f7 - f1 * f6 + f4 * f6),
|
||||
(double) (f8 + f2 * f6),
|
||||
(double) (f9 - f3 * f6 + f5 * f6),
|
||||
(double) x3,
|
||||
1.0);
|
||||
tessellator.addVertexWithUV(
|
||||
(double) (f7 + f1 * f6 + f4 * f6),
|
||||
(double) (f8 + f2 * f6),
|
||||
(double) (f9 + f3 * f6 + f5 * f6),
|
||||
(double) x2,
|
||||
1.0);
|
||||
tessellator.addVertexWithUV(
|
||||
(double) (f7 + f1 * f6 - f4 * f6),
|
||||
(double) (f8 - f2 * f6),
|
||||
(double) (f9 + f3 * f6 - f5 * f6),
|
||||
(double) x2,
|
||||
0.0);
|
||||
tessellator.addVertexWithUV(f7 - f1 * f6 - f4 * f6, f8 - f2 * f6, f9 - f3 * f6 - f5 * f6, x3, 0.0);
|
||||
tessellator.addVertexWithUV(f7 - f1 * f6 + f4 * f6, f8 + f2 * f6, f9 - f3 * f6 + f5 * f6, x3, 1.0);
|
||||
tessellator.addVertexWithUV(f7 + f1 * f6 + f4 * f6, f8 + f2 * f6, f9 + f3 * f6 + f5 * f6, x2, 1.0);
|
||||
tessellator.addVertexWithUV(f7 + f1 * f6 - f4 * f6, f8 - f2 * f6, f9 + f3 * f6 - f5 * f6, x2, 0.0);
|
||||
tessellator.draw();
|
||||
GL11.glDisable(3042);
|
||||
GL11.glDisable(GL11.GL_BLEND);
|
||||
GL11.glDepthMask(true);
|
||||
GL11.glPopMatrix();
|
||||
}
|
||||
|
||||
public void doRender(
|
||||
final Entity entity, final double d, final double d1, final double d2, final float f, final float f1) {
|
||||
public void doRender(final Entity entity, final double d, final double d1, final double d2, final float f,
|
||||
final float f1) {
|
||||
if (this.size1 == 0) {
|
||||
this.size1 = 16;
|
||||
}
|
||||
|
||||
+10
-13
@@ -4,15 +4,18 @@
|
||||
|
||||
package com.kentington.thaumichorizons.client.renderer.entity;
|
||||
|
||||
import com.kentington.thaumichorizons.client.renderer.model.ModelSyringe;
|
||||
import com.kentington.thaumichorizons.common.entities.EntitySyringe;
|
||||
import net.minecraft.client.renderer.entity.Render;
|
||||
import net.minecraft.entity.Entity;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
|
||||
import org.lwjgl.opengl.GL11;
|
||||
|
||||
import com.kentington.thaumichorizons.client.renderer.model.ModelSyringe;
|
||||
import com.kentington.thaumichorizons.common.entities.EntitySyringe;
|
||||
|
||||
public class RenderSyringe extends Render {
|
||||
private ModelSyringe model;
|
||||
|
||||
private final ModelSyringe model;
|
||||
|
||||
public RenderSyringe() {
|
||||
this.shadowSize = 0.0f;
|
||||
@@ -23,20 +26,14 @@ public class RenderSyringe extends Render {
|
||||
return new ResourceLocation("thaumichorizons", "textures/models/syringe.png");
|
||||
}
|
||||
|
||||
public void doRender(
|
||||
final Entity ent,
|
||||
final double p_76986_2_,
|
||||
final double p_76986_4_,
|
||||
final double p_76986_6_,
|
||||
final float p_76986_8_,
|
||||
final float p_76986_9_) {
|
||||
if (ent instanceof EntitySyringe) {
|
||||
final EntitySyringe syringe = (EntitySyringe) ent;
|
||||
public void doRender(final Entity ent, final double p_76986_2_, final double p_76986_4_, final double p_76986_6_,
|
||||
final float p_76986_8_, final float p_76986_9_) {
|
||||
if (ent instanceof final EntitySyringe syringe) {
|
||||
GL11.glPushMatrix();
|
||||
GL11.glTranslatef((float) p_76986_2_, (float) p_76986_4_, (float) p_76986_6_);
|
||||
GL11.glRotatef(syringe.rotationYaw + 90.0f, 0.0f, 1.0f, 0.0f);
|
||||
GL11.glRotatef(-syringe.rotationPitch, 0.0f, 0.0f, 1.0f);
|
||||
this.bindEntityTexture((Entity) syringe);
|
||||
this.bindEntityTexture(syringe);
|
||||
this.model.render(syringe, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0625f, null);
|
||||
GL11.glPopMatrix();
|
||||
}
|
||||
|
||||
+26
-46
@@ -4,7 +4,6 @@
|
||||
|
||||
package com.kentington.thaumichorizons.client.renderer.entity;
|
||||
|
||||
import com.kentington.thaumichorizons.common.entities.EntityTaintPig;
|
||||
import net.minecraft.client.model.ModelBase;
|
||||
import net.minecraft.client.renderer.OpenGlHelper;
|
||||
import net.minecraft.client.renderer.entity.RenderPig;
|
||||
@@ -13,11 +12,16 @@ import net.minecraft.entity.EntityLiving;
|
||||
import net.minecraft.entity.EntityLivingBase;
|
||||
import net.minecraft.entity.passive.EntityPig;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
|
||||
import org.lwjgl.opengl.GL11;
|
||||
|
||||
import com.kentington.thaumichorizons.common.entities.EntityTaintPig;
|
||||
|
||||
import thaumcraft.client.lib.UtilsFX;
|
||||
import thaumcraft.client.renderers.tile.TileNodeRenderer;
|
||||
|
||||
public class RenderTaintfeeder extends RenderPig {
|
||||
|
||||
private static final ResourceLocation pigTextures;
|
||||
private static final ResourceLocation pigEyesTextures;
|
||||
|
||||
@@ -29,21 +33,16 @@ public class RenderTaintfeeder extends RenderPig {
|
||||
return RenderTaintfeeder.pigTextures;
|
||||
}
|
||||
|
||||
public void doRender(
|
||||
final EntityTaintPig p_76986_1_,
|
||||
final double p_76986_2_,
|
||||
final double p_76986_4_,
|
||||
final double p_76986_6_,
|
||||
final float p_76986_8_,
|
||||
final float p_76986_9_) {
|
||||
super.doRender((EntityLiving) p_76986_1_, p_76986_2_, p_76986_4_, p_76986_6_, p_76986_8_, p_76986_9_);
|
||||
public void doRender(final EntityTaintPig p_76986_1_, final double p_76986_2_, final double p_76986_4_,
|
||||
final double p_76986_6_, final float p_76986_8_, final float p_76986_9_) {
|
||||
super.doRender(p_76986_1_, p_76986_2_, p_76986_4_, p_76986_6_, p_76986_8_, p_76986_9_);
|
||||
GL11.glPushMatrix();
|
||||
GL11.glAlphaFunc(516, 0.003921569f);
|
||||
GL11.glEnable(3042);
|
||||
GL11.glBlendFunc(770, 1);
|
||||
GL11.glAlphaFunc(GL11.GL_GREATER, 0.003921569f);
|
||||
GL11.glEnable(GL11.GL_BLEND);
|
||||
GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE);
|
||||
GL11.glPushMatrix();
|
||||
GL11.glDepthMask(false);
|
||||
GL11.glDisable(2884);
|
||||
GL11.glDisable(GL11.GL_CULL_FACE);
|
||||
final int i = p_76986_1_.ticksExisted % 32;
|
||||
UtilsFX.bindTexture(TileNodeRenderer.nodetex);
|
||||
UtilsFX.renderFacingStrip(
|
||||
@@ -58,41 +57,26 @@ public class RenderTaintfeeder extends RenderPig {
|
||||
i,
|
||||
p_76986_9_,
|
||||
11197951);
|
||||
GL11.glEnable(2884);
|
||||
GL11.glEnable(GL11.GL_CULL_FACE);
|
||||
GL11.glDepthMask(true);
|
||||
GL11.glPopMatrix();
|
||||
GL11.glDisable(3042);
|
||||
GL11.glAlphaFunc(516, 0.1f);
|
||||
GL11.glDisable(GL11.GL_BLEND);
|
||||
GL11.glAlphaFunc(GL11.GL_GREATER, 0.1f);
|
||||
GL11.glPopMatrix();
|
||||
}
|
||||
|
||||
public void doRender(
|
||||
final Entity p_76986_1_,
|
||||
final double p_76986_2_,
|
||||
final double p_76986_4_,
|
||||
final double p_76986_6_,
|
||||
final float p_76986_8_,
|
||||
final float p_76986_9_) {
|
||||
public void doRender(final Entity p_76986_1_, final double p_76986_2_, final double p_76986_4_,
|
||||
final double p_76986_6_, final float p_76986_8_, final float p_76986_9_) {
|
||||
this.doRender((EntityTaintPig) p_76986_1_, p_76986_2_, p_76986_4_, p_76986_6_, p_76986_8_, p_76986_9_);
|
||||
}
|
||||
|
||||
public void doRender(
|
||||
final EntityLiving p_76986_1_,
|
||||
final double p_76986_2_,
|
||||
final double p_76986_4_,
|
||||
final double p_76986_6_,
|
||||
final float p_76986_8_,
|
||||
final float p_76986_9_) {
|
||||
public void doRender(final EntityLiving p_76986_1_, final double p_76986_2_, final double p_76986_4_,
|
||||
final double p_76986_6_, final float p_76986_8_, final float p_76986_9_) {
|
||||
this.doRender((EntityTaintPig) p_76986_1_, p_76986_2_, p_76986_4_, p_76986_6_, p_76986_8_, p_76986_9_);
|
||||
}
|
||||
|
||||
public void doRender(
|
||||
final EntityLivingBase p_76986_1_,
|
||||
final double p_76986_2_,
|
||||
final double p_76986_4_,
|
||||
final double p_76986_6_,
|
||||
final float p_76986_8_,
|
||||
final float p_76986_9_) {
|
||||
public void doRender(final EntityLivingBase p_76986_1_, final double p_76986_2_, final double p_76986_4_,
|
||||
final double p_76986_6_, final float p_76986_8_, final float p_76986_9_) {
|
||||
this.doRender((EntityTaintPig) p_76986_1_, p_76986_2_, p_76986_4_, p_76986_6_, p_76986_8_, p_76986_9_);
|
||||
}
|
||||
|
||||
@@ -106,18 +90,14 @@ public class RenderTaintfeeder extends RenderPig {
|
||||
}
|
||||
final float f = (float) Math.sin(Math.toRadians(p_77032_1_.ticksExisted % 45) * 8.0);
|
||||
this.bindTexture(RenderTaintfeeder.pigEyesTextures);
|
||||
GL11.glEnable(3042);
|
||||
GL11.glDisable(3008);
|
||||
GL11.glBlendFunc(770, 771);
|
||||
if (p_77032_1_.isInvisible()) {
|
||||
GL11.glDepthMask(false);
|
||||
} else {
|
||||
GL11.glDepthMask(true);
|
||||
}
|
||||
GL11.glEnable(GL11.GL_BLEND);
|
||||
GL11.glDisable(GL11.GL_ALPHA_TEST);
|
||||
GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA);
|
||||
GL11.glDepthMask(!p_77032_1_.isInvisible());
|
||||
final char c0 = '\uf0f0';
|
||||
final int j = c0 % 65536;
|
||||
final int k = c0 / 65536;
|
||||
OpenGlHelper.setLightmapTextureCoords(OpenGlHelper.lightmapTexUnit, j / 1.0f, k / 1.0f);
|
||||
OpenGlHelper.setLightmapTextureCoords(OpenGlHelper.lightmapTexUnit, j, k);
|
||||
GL11.glColor4f(1.0f, 1.0f, 1.0f, 0.32f + 0.32f * f);
|
||||
return 1;
|
||||
}
|
||||
|
||||
+1
@@ -10,6 +10,7 @@ import net.minecraft.entity.monster.EntitySlime;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
|
||||
public class RenderVoltSlime extends RenderSlime {
|
||||
|
||||
private static final ResourceLocation slimeTextures;
|
||||
|
||||
protected ResourceLocation getEntityTexture(final EntitySlime p_110775_1_) {
|
||||
|
||||
+56
-90
@@ -4,8 +4,8 @@
|
||||
|
||||
package com.kentington.thaumichorizons.client.renderer.entity;
|
||||
|
||||
import com.kentington.thaumichorizons.common.entities.EntityWizardCow;
|
||||
import java.util.HashMap;
|
||||
|
||||
import net.minecraft.client.Minecraft;
|
||||
import net.minecraft.client.model.ModelBase;
|
||||
import net.minecraft.client.renderer.entity.RenderCow;
|
||||
@@ -13,7 +13,11 @@ import net.minecraft.entity.Entity;
|
||||
import net.minecraft.entity.EntityLiving;
|
||||
import net.minecraft.entity.EntityLivingBase;
|
||||
import net.minecraft.util.MathHelper;
|
||||
|
||||
import org.lwjgl.opengl.GL11;
|
||||
|
||||
import com.kentington.thaumichorizons.common.entities.EntityWizardCow;
|
||||
|
||||
import thaumcraft.api.aspects.Aspect;
|
||||
import thaumcraft.api.aspects.AspectList;
|
||||
import thaumcraft.api.nodes.NodeModifier;
|
||||
@@ -22,6 +26,7 @@ import thaumcraft.client.lib.UtilsFX;
|
||||
import thaumcraft.client.renderers.tile.TileNodeRenderer;
|
||||
|
||||
public class RenderWizardCow extends RenderCow {
|
||||
|
||||
public static HashMap<String, AspectList> cowAspects;
|
||||
public static HashMap<String, NodeType> cowTypes;
|
||||
public static HashMap<String, NodeModifier> cowMods;
|
||||
@@ -30,17 +35,12 @@ public class RenderWizardCow extends RenderCow {
|
||||
super(p_i1253_1_, p_i1253_2_);
|
||||
}
|
||||
|
||||
public void doRender(
|
||||
final EntityWizardCow p_76986_1_,
|
||||
final double p_76986_2_,
|
||||
final double p_76986_4_,
|
||||
final double p_76986_6_,
|
||||
final float p_76986_8_,
|
||||
final float p_76986_9_) {
|
||||
GL11.glEnable(3042);
|
||||
GL11.glBlendFunc(770, 771);
|
||||
public void doRender(final EntityWizardCow p_76986_1_, final double p_76986_2_, final double p_76986_4_,
|
||||
final double p_76986_6_, final float p_76986_8_, final float p_76986_9_) {
|
||||
GL11.glEnable(GL11.GL_BLEND);
|
||||
GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA);
|
||||
GL11.glColor4f(1.0f, 1.0f, 1.0f, 0.5f);
|
||||
super.doRender((EntityLiving) p_76986_1_, p_76986_2_, p_76986_4_, p_76986_6_, p_76986_8_, p_76986_9_);
|
||||
super.doRender(p_76986_1_, p_76986_2_, p_76986_4_, p_76986_6_, p_76986_8_, p_76986_9_);
|
||||
GL11.glColor4f(1.0f, 1.0f, 1.0f, 1.0f);
|
||||
if (RenderWizardCow.cowAspects.containsKey(p_76986_1_.getUniqueID().toString())) {
|
||||
this.renderMyNode(
|
||||
@@ -57,22 +57,12 @@ public class RenderWizardCow extends RenderCow {
|
||||
RenderWizardCow.cowTypes.get(p_76986_1_.getUniqueID().toString()),
|
||||
RenderWizardCow.cowMods.get(p_76986_1_.getUniqueID().toString()));
|
||||
}
|
||||
GL11.glDisable(3042);
|
||||
GL11.glDisable(GL11.GL_BLEND);
|
||||
}
|
||||
|
||||
public void renderMyNode(
|
||||
final double x,
|
||||
final double y,
|
||||
final double z,
|
||||
final EntityLivingBase viewer,
|
||||
final double viewDistance,
|
||||
final boolean visible,
|
||||
final boolean depthIgnore,
|
||||
final float size,
|
||||
final float partialTicks,
|
||||
final AspectList aspects,
|
||||
final NodeType type,
|
||||
final NodeModifier mod) {
|
||||
public void renderMyNode(final double x, final double y, final double z, final EntityLivingBase viewer,
|
||||
final double viewDistance, final boolean visible, final boolean depthIgnore, final float size,
|
||||
final float partialTicks, final AspectList aspects, final NodeType type, final NodeModifier mod) {
|
||||
final long nt = System.nanoTime();
|
||||
UtilsFX.bindTexture(TileNodeRenderer.nodetex);
|
||||
final int frames = 32;
|
||||
@@ -84,31 +74,28 @@ public class RenderWizardCow extends RenderCow {
|
||||
float alpha = (float) ((viewDistance - distance) / viewDistance);
|
||||
if (mod != null) {
|
||||
switch (mod) {
|
||||
case BRIGHT: {
|
||||
case BRIGHT -> {
|
||||
alpha *= 1.5f;
|
||||
break;
|
||||
}
|
||||
case PALE: {
|
||||
case PALE -> {
|
||||
alpha *= 0.66f;
|
||||
break;
|
||||
}
|
||||
case FADING: {
|
||||
case FADING -> {
|
||||
alpha *= MathHelper.sin(viewer.ticksExisted / 3.0f) * 0.25f + 0.33f;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
GL11.glPushMatrix();
|
||||
GL11.glAlphaFunc(516, 0.003921569f);
|
||||
GL11.glAlphaFunc(GL11.GL_GREATER, 0.003921569f);
|
||||
GL11.glDepthMask(false);
|
||||
if (depthIgnore) {
|
||||
GL11.glDisable(2929);
|
||||
GL11.glDisable(GL11.GL_DEPTH_TEST);
|
||||
}
|
||||
GL11.glDisable(2884);
|
||||
GL11.glDisable(GL11.GL_CULL_FACE);
|
||||
final long time = nt / 5000000L;
|
||||
final float bscale = 0.25f;
|
||||
GL11.glPushMatrix();
|
||||
final float rad = 6.283186f;
|
||||
final float rad = ((float) Math.PI * 2F);
|
||||
GL11.glColor4f(1.0f, 1.0f, 1.0f, alpha);
|
||||
int i = (int) ((nt / 40000000L + x) % frames);
|
||||
int count = 0;
|
||||
@@ -121,8 +108,8 @@ public class RenderWizardCow extends RenderCow {
|
||||
}
|
||||
average += aspects.getAmount(aspect);
|
||||
GL11.glPushMatrix();
|
||||
GL11.glEnable(3042);
|
||||
GL11.glBlendFunc(770, aspect.getBlend());
|
||||
GL11.glEnable(GL11.GL_BLEND);
|
||||
GL11.glBlendFunc(GL11.GL_SRC_ALPHA, aspect.getBlend());
|
||||
scale = MathHelper.sin(viewer.ticksExisted / (14.0f - count)) * bscale + bscale * 2.0f;
|
||||
scale = 0.2f + scale * (aspects.getAmount(aspect) / 50.0f);
|
||||
scale *= size;
|
||||
@@ -139,7 +126,7 @@ public class RenderWizardCow extends RenderCow {
|
||||
i,
|
||||
partialTicks,
|
||||
aspect.getColor());
|
||||
GL11.glDisable(3042);
|
||||
GL11.glDisable(GL11.GL_BLEND);
|
||||
GL11.glPopMatrix();
|
||||
++count;
|
||||
if (aspect.getBlend() == 771) {
|
||||
@@ -148,105 +135,84 @@ public class RenderWizardCow extends RenderCow {
|
||||
}
|
||||
average /= aspects.size();
|
||||
GL11.glPushMatrix();
|
||||
GL11.glEnable(3042);
|
||||
GL11.glEnable(GL11.GL_BLEND);
|
||||
i = (int) ((nt / 40000000L + x) % frames);
|
||||
scale = 0.1f + average / 150.0f;
|
||||
scale *= size;
|
||||
int strip = 1;
|
||||
switch (type) {
|
||||
case NORMAL: {
|
||||
GL11.glBlendFunc(770, 1);
|
||||
break;
|
||||
case NORMAL -> {
|
||||
GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE);
|
||||
}
|
||||
case UNSTABLE: {
|
||||
GL11.glBlendFunc(770, 1);
|
||||
case UNSTABLE -> {
|
||||
GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE);
|
||||
strip = 6;
|
||||
angle = 0.0f;
|
||||
break;
|
||||
}
|
||||
case DARK: {
|
||||
GL11.glBlendFunc(770, 771);
|
||||
case DARK -> {
|
||||
GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA);
|
||||
strip = 2;
|
||||
break;
|
||||
}
|
||||
case TAINTED: {
|
||||
GL11.glBlendFunc(770, 771);
|
||||
case TAINTED -> {
|
||||
GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA);
|
||||
strip = 5;
|
||||
break;
|
||||
}
|
||||
case HUNGRY: {
|
||||
GL11.glBlendFunc(770, 1);
|
||||
case HUNGRY -> {
|
||||
GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE);
|
||||
strip = 4;
|
||||
break;
|
||||
}
|
||||
case PURE: {
|
||||
case PURE -> {
|
||||
scale *= 0.75f;
|
||||
GL11.glBlendFunc(770, 1);
|
||||
GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE);
|
||||
strip = 3;
|
||||
break;
|
||||
}
|
||||
}
|
||||
GL11.glColor4f(1.0f, 0.0f, 1.0f, alpha);
|
||||
UtilsFX.renderFacingStrip(x, y, z, angle, scale, alpha, frames, strip, i, partialTicks, 16777215);
|
||||
GL11.glDisable(3042);
|
||||
GL11.glDisable(GL11.GL_BLEND);
|
||||
GL11.glPopMatrix();
|
||||
GL11.glPopMatrix();
|
||||
GL11.glEnable(2884);
|
||||
GL11.glEnable(GL11.GL_CULL_FACE);
|
||||
if (depthIgnore) {
|
||||
GL11.glEnable(2929);
|
||||
GL11.glEnable(GL11.GL_DEPTH_TEST);
|
||||
}
|
||||
GL11.glDepthMask(true);
|
||||
GL11.glAlphaFunc(516, 0.1f);
|
||||
GL11.glAlphaFunc(GL11.GL_GREATER, 0.1f);
|
||||
GL11.glPopMatrix();
|
||||
} else {
|
||||
GL11.glPushMatrix();
|
||||
GL11.glAlphaFunc(516, 0.003921569f);
|
||||
GL11.glEnable(3042);
|
||||
GL11.glBlendFunc(770, 1);
|
||||
GL11.glAlphaFunc(GL11.GL_GREATER, 0.003921569f);
|
||||
GL11.glEnable(GL11.GL_BLEND);
|
||||
GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE);
|
||||
GL11.glDepthMask(false);
|
||||
final int j = (int) ((nt / 40000000L + x) % frames);
|
||||
GL11.glColor4f(1.0f, 0.0f, 1.0f, 0.1f);
|
||||
UtilsFX.renderFacingStrip(x, y, z, 0.0f, 0.5f, 0.1f, frames, 1, j, partialTicks, 16777215);
|
||||
GL11.glDepthMask(true);
|
||||
GL11.glDisable(3042);
|
||||
GL11.glAlphaFunc(516, 0.1f);
|
||||
GL11.glDisable(GL11.GL_BLEND);
|
||||
GL11.glAlphaFunc(GL11.GL_GREATER, 0.1f);
|
||||
GL11.glPopMatrix();
|
||||
}
|
||||
}
|
||||
|
||||
public void doRender(
|
||||
final Entity p_76986_1_,
|
||||
final double p_76986_2_,
|
||||
final double p_76986_4_,
|
||||
final double p_76986_6_,
|
||||
final float p_76986_8_,
|
||||
final float p_76986_9_) {
|
||||
public void doRender(final Entity p_76986_1_, final double p_76986_2_, final double p_76986_4_,
|
||||
final double p_76986_6_, final float p_76986_8_, final float p_76986_9_) {
|
||||
this.doRender((EntityWizardCow) p_76986_1_, p_76986_2_, p_76986_4_, p_76986_6_, p_76986_8_, p_76986_9_);
|
||||
}
|
||||
|
||||
public void doRender(
|
||||
final EntityLiving p_76986_1_,
|
||||
final double p_76986_2_,
|
||||
final double p_76986_4_,
|
||||
final double p_76986_6_,
|
||||
final float p_76986_8_,
|
||||
final float p_76986_9_) {
|
||||
public void doRender(final EntityLiving p_76986_1_, final double p_76986_2_, final double p_76986_4_,
|
||||
final double p_76986_6_, final float p_76986_8_, final float p_76986_9_) {
|
||||
this.doRender((EntityWizardCow) p_76986_1_, p_76986_2_, p_76986_4_, p_76986_6_, p_76986_8_, p_76986_9_);
|
||||
}
|
||||
|
||||
public void doRender(
|
||||
final EntityLivingBase p_76986_1_,
|
||||
final double p_76986_2_,
|
||||
final double p_76986_4_,
|
||||
final double p_76986_6_,
|
||||
final float p_76986_8_,
|
||||
final float p_76986_9_) {
|
||||
public void doRender(final EntityLivingBase p_76986_1_, final double p_76986_2_, final double p_76986_4_,
|
||||
final double p_76986_6_, final float p_76986_8_, final float p_76986_9_) {
|
||||
this.doRender((EntityWizardCow) p_76986_1_, p_76986_2_, p_76986_4_, p_76986_6_, p_76986_8_, p_76986_9_);
|
||||
}
|
||||
|
||||
static {
|
||||
RenderWizardCow.cowAspects = new HashMap<String, AspectList>();
|
||||
RenderWizardCow.cowTypes = new HashMap<String, NodeType>();
|
||||
RenderWizardCow.cowMods = new HashMap<String, NodeModifier>();
|
||||
RenderWizardCow.cowAspects = new HashMap<>();
|
||||
RenderWizardCow.cowTypes = new HashMap<>();
|
||||
RenderWizardCow.cowMods = new HashMap<>();
|
||||
}
|
||||
}
|
||||
+7
-7
@@ -7,16 +7,18 @@ package com.kentington.thaumichorizons.client.renderer.item;
|
||||
import net.minecraft.client.model.ModelBiped;
|
||||
import net.minecraft.client.renderer.ItemRenderer;
|
||||
import net.minecraft.client.renderer.entity.RenderManager;
|
||||
import net.minecraft.entity.Entity;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
import net.minecraftforge.client.IItemRenderer;
|
||||
|
||||
import org.lwjgl.opengl.GL11;
|
||||
|
||||
import thaumcraft.client.lib.UtilsFX;
|
||||
|
||||
public class ItemCorpseEffigyRender implements IItemRenderer {
|
||||
private ModelBiped corpse;
|
||||
private String tx1;
|
||||
|
||||
private final ModelBiped corpse;
|
||||
private final String tx1;
|
||||
|
||||
public ItemCorpseEffigyRender() {
|
||||
this.corpse = new ModelBiped();
|
||||
@@ -27,9 +29,7 @@ public class ItemCorpseEffigyRender implements IItemRenderer {
|
||||
return true;
|
||||
}
|
||||
|
||||
public boolean shouldUseRenderHelper(
|
||||
final IItemRenderer.ItemRenderType type,
|
||||
final ItemStack item,
|
||||
public boolean shouldUseRenderHelper(final IItemRenderer.ItemRenderType type, final ItemStack item,
|
||||
final IItemRenderer.ItemRendererHelper helper) {
|
||||
return helper != IItemRenderer.ItemRendererHelper.BLOCK_3D;
|
||||
}
|
||||
@@ -51,7 +51,7 @@ public class ItemCorpseEffigyRender implements IItemRenderer {
|
||||
GL11.glScalef(0.5f, 0.5f, 0.5f);
|
||||
}
|
||||
UtilsFX.bindTexture(new ResourceLocation("thaumichorizons", this.tx1));
|
||||
this.corpse.render((Entity) null, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.125f);
|
||||
this.corpse.render(null, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.125f);
|
||||
GL11.glPopMatrix();
|
||||
}
|
||||
}
|
||||
+15
-8
@@ -4,20 +4,23 @@
|
||||
|
||||
package com.kentington.thaumichorizons.client.renderer.item;
|
||||
|
||||
import com.kentington.thaumichorizons.client.renderer.model.ModelInjector;
|
||||
import net.minecraft.client.model.ModelBase;
|
||||
import net.minecraft.client.renderer.ItemRenderer;
|
||||
import net.minecraft.client.renderer.entity.RenderManager;
|
||||
import net.minecraft.entity.Entity;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
import net.minecraftforge.client.IItemRenderer;
|
||||
|
||||
import org.lwjgl.opengl.GL11;
|
||||
|
||||
import com.kentington.thaumichorizons.client.renderer.model.ModelInjector;
|
||||
|
||||
import thaumcraft.client.lib.UtilsFX;
|
||||
|
||||
public class ItemInjectorRender implements IItemRenderer {
|
||||
private ModelBase injector;
|
||||
private String tx1;
|
||||
|
||||
private final ModelBase injector;
|
||||
private final String tx1;
|
||||
|
||||
public ItemInjectorRender() {
|
||||
this.injector = new ModelInjector();
|
||||
@@ -28,9 +31,7 @@ public class ItemInjectorRender implements IItemRenderer {
|
||||
return true;
|
||||
}
|
||||
|
||||
public boolean shouldUseRenderHelper(
|
||||
final IItemRenderer.ItemRenderType type,
|
||||
final ItemStack item,
|
||||
public boolean shouldUseRenderHelper(final IItemRenderer.ItemRenderType type, final ItemStack item,
|
||||
final IItemRenderer.ItemRendererHelper helper) {
|
||||
return helper != IItemRenderer.ItemRendererHelper.BLOCK_3D;
|
||||
}
|
||||
@@ -77,7 +78,13 @@ public class ItemInjectorRender implements IItemRenderer {
|
||||
}
|
||||
UtilsFX.bindTexture(new ResourceLocation("thaumichorizons", this.tx1));
|
||||
this.injector.render(
|
||||
(Entity) null, f * 3.1415927f / 16.0f, f * 3.1415927f / 4.0f, (float) rotation, f, 0.0f, 0.125f);
|
||||
null,
|
||||
f * (float) Math.PI / 16.0f,
|
||||
f * (float) Math.PI / 4.0f,
|
||||
(float) rotation,
|
||||
f,
|
||||
0.0f,
|
||||
0.125f);
|
||||
GL11.glPopMatrix();
|
||||
}
|
||||
}
|
||||
+16
-15
@@ -4,22 +4,26 @@
|
||||
|
||||
package com.kentington.thaumichorizons.client.renderer.item;
|
||||
|
||||
import com.kentington.thaumichorizons.client.renderer.model.ModelSyringe;
|
||||
import com.kentington.thaumichorizons.common.items.ItemSyringeBlood;
|
||||
import com.kentington.thaumichorizons.common.items.ItemSyringeBloodSample;
|
||||
import com.kentington.thaumichorizons.common.items.ItemSyringeEmpty;
|
||||
import com.kentington.thaumichorizons.common.items.ItemSyringeInjection;
|
||||
import net.minecraft.client.renderer.ItemRenderer;
|
||||
import net.minecraft.client.renderer.entity.RenderManager;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
import net.minecraftforge.client.IItemRenderer;
|
||||
|
||||
import org.lwjgl.opengl.GL11;
|
||||
|
||||
import com.kentington.thaumichorizons.client.renderer.model.ModelSyringe;
|
||||
import com.kentington.thaumichorizons.common.items.ItemSyringeBlood;
|
||||
import com.kentington.thaumichorizons.common.items.ItemSyringeBloodSample;
|
||||
import com.kentington.thaumichorizons.common.items.ItemSyringeEmpty;
|
||||
import com.kentington.thaumichorizons.common.items.ItemSyringeInjection;
|
||||
|
||||
import thaumcraft.client.lib.UtilsFX;
|
||||
|
||||
public class ItemSyringeRender implements IItemRenderer {
|
||||
private ModelSyringe syringe;
|
||||
private String tx1;
|
||||
|
||||
private final ModelSyringe syringe;
|
||||
private final String tx1;
|
||||
|
||||
public ItemSyringeRender() {
|
||||
this.syringe = new ModelSyringe();
|
||||
@@ -30,17 +34,14 @@ public class ItemSyringeRender implements IItemRenderer {
|
||||
return item.getItemDamage() == 0;
|
||||
}
|
||||
|
||||
public boolean shouldUseRenderHelper(
|
||||
final IItemRenderer.ItemRenderType type,
|
||||
final ItemStack item,
|
||||
public boolean shouldUseRenderHelper(final IItemRenderer.ItemRenderType type, final ItemStack item,
|
||||
final IItemRenderer.ItemRendererHelper helper) {
|
||||
return helper != IItemRenderer.ItemRendererHelper.BLOCK_3D;
|
||||
}
|
||||
|
||||
public void renderItem(final IItemRenderer.ItemRenderType type, final ItemStack item, final Object... data) {
|
||||
if (item == null
|
||||
|| (!(item.getItem() instanceof ItemSyringeBlood)
|
||||
&& !(item.getItem() instanceof ItemSyringeBloodSample)
|
||||
|| (!(item.getItem() instanceof ItemSyringeBlood) && !(item.getItem() instanceof ItemSyringeBloodSample)
|
||||
&& !(item.getItem() instanceof ItemSyringeInjection)
|
||||
&& !(item.getItem() instanceof ItemSyringeEmpty))) {
|
||||
return;
|
||||
@@ -57,11 +58,11 @@ public class ItemSyringeRender implements IItemRenderer {
|
||||
} else {
|
||||
GL11.glTranslated(0.0, -2.75, 0.0);
|
||||
}
|
||||
GL11.glEnable(3042);
|
||||
GL11.glBlendFunc(770, 771);
|
||||
GL11.glEnable(GL11.GL_BLEND);
|
||||
GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA);
|
||||
UtilsFX.bindTexture(new ResourceLocation("thaumichorizons", this.tx1));
|
||||
this.syringe.render(null, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.125f, item);
|
||||
GL11.glDisable(3042);
|
||||
GL11.glDisable(GL11.GL_BLEND);
|
||||
GL11.glPopMatrix();
|
||||
}
|
||||
}
|
||||
+13
-18
@@ -9,6 +9,7 @@ import net.minecraft.client.model.ModelRenderer;
|
||||
import net.minecraft.entity.Entity;
|
||||
|
||||
public class ModelBloodInfuser extends ModelBase {
|
||||
|
||||
ModelRenderer Body;
|
||||
ModelRenderer SyringeSlot;
|
||||
ModelRenderer Pipe1A;
|
||||
@@ -23,66 +24,60 @@ public class ModelBloodInfuser extends ModelBase {
|
||||
public ModelBloodInfuser() {
|
||||
this.textureWidth = 64;
|
||||
this.textureHeight = 64;
|
||||
(this.Body = new ModelRenderer((ModelBase) this, 0, 0)).addBox(0.0f, 0.0f, 0.0f, 16, 10, 16);
|
||||
(this.Body = new ModelRenderer(this, 0, 0)).addBox(0.0f, 0.0f, 0.0f, 16, 10, 16);
|
||||
this.Body.setRotationPoint(-8.0f, 14.0f, -8.0f);
|
||||
this.Body.setTextureSize(64, 64);
|
||||
this.Body.mirror = true;
|
||||
this.setRotation(this.Body, 0.0f, 0.0f, 0.0f);
|
||||
(this.SyringeSlot = new ModelRenderer((ModelBase) this, 0, 32)).addBox(0.0f, 0.0f, 0.0f, 6, 6, 6);
|
||||
(this.SyringeSlot = new ModelRenderer(this, 0, 32)).addBox(0.0f, 0.0f, 0.0f, 6, 6, 6);
|
||||
this.SyringeSlot.setRotationPoint(-3.0f, 8.0f, -3.0f);
|
||||
this.SyringeSlot.setTextureSize(64, 64);
|
||||
this.SyringeSlot.mirror = true;
|
||||
this.setRotation(this.SyringeSlot, 0.0f, 0.0f, 0.0f);
|
||||
(this.Pipe1A = new ModelRenderer((ModelBase) this, 0, 48)).addBox(0.0f, 0.0f, 0.0f, 2, 2, 3);
|
||||
(this.Pipe1A = new ModelRenderer(this, 0, 48)).addBox(0.0f, 0.0f, 0.0f, 2, 2, 3);
|
||||
this.Pipe1A.setRotationPoint(-1.0f, 9.0f, 3.0f);
|
||||
this.Pipe1A.setTextureSize(64, 64);
|
||||
this.Pipe1A.mirror = true;
|
||||
this.setRotation(this.Pipe1A, 0.0f, 0.0f, 0.0f);
|
||||
(this.Pipe1B = new ModelRenderer((ModelBase) this, 0, 54)).addBox(0.0f, 0.0f, 0.0f, 2, 3, 2);
|
||||
(this.Pipe1B = new ModelRenderer(this, 0, 54)).addBox(0.0f, 0.0f, 0.0f, 2, 3, 2);
|
||||
this.Pipe1B.setRotationPoint(-1.0f, 11.0f, 4.0f);
|
||||
this.Pipe1B.setTextureSize(64, 64);
|
||||
this.Pipe1B.mirror = true;
|
||||
this.setRotation(this.Pipe1B, 0.0f, 0.0f, 0.0f);
|
||||
(this.Pipe2A = new ModelRenderer((ModelBase) this, 0, 48)).addBox(0.0f, 0.0f, 0.0f, 2, 2, 3);
|
||||
(this.Pipe2A = new ModelRenderer(this, 0, 48)).addBox(0.0f, 0.0f, 0.0f, 2, 2, 3);
|
||||
this.Pipe2A.setRotationPoint(-1.0f, 9.0f, -6.0f);
|
||||
this.Pipe2A.setTextureSize(64, 64);
|
||||
this.Pipe2A.mirror = true;
|
||||
this.setRotation(this.Pipe2A, 0.0f, 0.0f, 0.0f);
|
||||
(this.Pipe2B = new ModelRenderer((ModelBase) this, 0, 54)).addBox(0.0f, 0.0f, 0.0f, 2, 3, 2);
|
||||
(this.Pipe2B = new ModelRenderer(this, 0, 54)).addBox(0.0f, 0.0f, 0.0f, 2, 3, 2);
|
||||
this.Pipe2B.setRotationPoint(-1.0f, 11.0f, -6.0f);
|
||||
this.Pipe2B.setTextureSize(64, 64);
|
||||
this.Pipe2B.mirror = true;
|
||||
this.setRotation(this.Pipe2B, 0.0f, 0.0f, 0.0f);
|
||||
(this.Pipe3A = new ModelRenderer((ModelBase) this, 0, 48)).addBox(0.0f, 0.0f, 0.0f, 3, 2, 2);
|
||||
(this.Pipe3A = new ModelRenderer(this, 0, 48)).addBox(0.0f, 0.0f, 0.0f, 3, 2, 2);
|
||||
this.Pipe3A.setRotationPoint(3.0f, 9.0f, -1.0f);
|
||||
this.Pipe3A.setTextureSize(64, 64);
|
||||
this.Pipe3A.mirror = true;
|
||||
this.setRotation(this.Pipe3A, 0.0f, 0.0f, 0.0f);
|
||||
(this.Pipe3B = new ModelRenderer((ModelBase) this, 0, 54)).addBox(0.0f, 0.0f, 0.0f, 2, 3, 2);
|
||||
(this.Pipe3B = new ModelRenderer(this, 0, 54)).addBox(0.0f, 0.0f, 0.0f, 2, 3, 2);
|
||||
this.Pipe3B.setRotationPoint(4.0f, 11.0f, -1.0f);
|
||||
this.Pipe3B.setTextureSize(64, 64);
|
||||
this.Pipe3B.mirror = true;
|
||||
this.setRotation(this.Pipe3B, 0.0f, 0.0f, 0.0f);
|
||||
(this.Pipe4A = new ModelRenderer((ModelBase) this, 0, 48)).addBox(0.0f, 0.0f, 0.0f, 3, 2, 2);
|
||||
(this.Pipe4A = new ModelRenderer(this, 0, 48)).addBox(0.0f, 0.0f, 0.0f, 3, 2, 2);
|
||||
this.Pipe4A.setRotationPoint(-6.0f, 9.0f, -1.0f);
|
||||
this.Pipe4A.setTextureSize(64, 64);
|
||||
this.Pipe4A.mirror = true;
|
||||
this.setRotation(this.Pipe4A, 0.0f, 0.0f, 0.0f);
|
||||
(this.Pipe4B = new ModelRenderer((ModelBase) this, 0, 54)).addBox(0.0f, 0.0f, 0.0f, 2, 3, 2);
|
||||
(this.Pipe4B = new ModelRenderer(this, 0, 54)).addBox(0.0f, 0.0f, 0.0f, 2, 3, 2);
|
||||
this.Pipe4B.setRotationPoint(-6.0f, 11.0f, -1.0f);
|
||||
this.Pipe4B.setTextureSize(64, 64);
|
||||
this.Pipe4B.mirror = true;
|
||||
this.setRotation(this.Pipe4B, 0.0f, 0.0f, 0.0f);
|
||||
}
|
||||
|
||||
public void render(
|
||||
final Entity entity,
|
||||
final float f,
|
||||
final float f1,
|
||||
final float f2,
|
||||
final float f3,
|
||||
final float f4,
|
||||
final float f5) {
|
||||
public void render(final Entity entity, final float f, final float f1, final float f2, final float f3,
|
||||
final float f4, final float f5) {
|
||||
super.render(entity, f, f1, f2, f3, f4, f5);
|
||||
this.Body.render(f5);
|
||||
this.SyringeSlot.render(f5);
|
||||
|
||||
+62
-69
@@ -12,6 +12,7 @@ import net.minecraft.entity.passive.EntityOcelot;
|
||||
import net.minecraft.util.MathHelper;
|
||||
|
||||
public class ModelFamiliar extends ModelBase {
|
||||
|
||||
ModelRenderer Body;
|
||||
ModelRenderer Tail1;
|
||||
ModelRenderer Tail2;
|
||||
@@ -34,96 +35,90 @@ public class ModelFamiliar extends ModelBase {
|
||||
this.field_78163_i = 1;
|
||||
this.textureWidth = 64;
|
||||
this.textureHeight = 32;
|
||||
(this.Body = new ModelRenderer((ModelBase) this, 20, 0)).addBox(-2.0f, 3.0f, -8.0f, 4, 16, 6);
|
||||
(this.Body = new ModelRenderer(this, 20, 0)).addBox(-2.0f, 3.0f, -8.0f, 4, 16, 6);
|
||||
this.Body.setRotationPoint(0.0f, 12.0f, -10.0f);
|
||||
this.Body.setTextureSize(64, 32);
|
||||
this.Body.mirror = true;
|
||||
this.setRotation(this.Body, 1.570796f, 0.0f, 0.0f);
|
||||
(this.Tail1 = new ModelRenderer((ModelBase) this, 0, 15)).addBox(-0.5f, 0.0f, 0.0f, 1, 8, 1);
|
||||
this.setRotation(this.Body, ((float) Math.PI / 2F), 0.0f, 0.0f);
|
||||
(this.Tail1 = new ModelRenderer(this, 0, 15)).addBox(-0.5f, 0.0f, 0.0f, 1, 8, 1);
|
||||
this.Tail1.setRotationPoint(0.0f, 15.0f, 8.0f);
|
||||
this.Tail1.setTextureSize(64, 32);
|
||||
this.Tail1.mirror = true;
|
||||
this.setRotation(this.Tail1, 1.570796f, 0.0f, 0.0f);
|
||||
(this.Tail2 = new ModelRenderer((ModelBase) this, 4, 15)).addBox(-0.5f, 0.0f, 0.0f, 1, 8, 1);
|
||||
this.setRotation(this.Tail1, ((float) Math.PI / 2F), 0.0f, 0.0f);
|
||||
(this.Tail2 = new ModelRenderer(this, 4, 15)).addBox(-0.5f, 0.0f, 0.0f, 1, 8, 1);
|
||||
this.Tail2.setRotationPoint(0.0f, 15.0f, 14.0f);
|
||||
this.Tail2.setTextureSize(64, 32);
|
||||
this.Tail2.mirror = true;
|
||||
this.setRotation(this.Tail2, 1.570796f, 0.0f, 0.0f);
|
||||
(this.LegBackL = new ModelRenderer((ModelBase) this, 8, 13)).addBox(-1.0f, 0.0f, 1.0f, 2, 6, 2);
|
||||
this.setRotation(this.Tail2, ((float) Math.PI / 2F), 0.0f, 0.0f);
|
||||
(this.LegBackL = new ModelRenderer(this, 8, 13)).addBox(-1.0f, 0.0f, 1.0f, 2, 6, 2);
|
||||
this.LegBackL.setRotationPoint(1.1f, 18.0f, 5.0f);
|
||||
this.LegBackL.setTextureSize(64, 32);
|
||||
this.LegBackL.mirror = true;
|
||||
this.setRotation(this.LegBackL, 0.0f, 0.0f, 0.0f);
|
||||
(this.Ear1 = new ModelRenderer((ModelBase) this, 0, 10)).addBox(-2.0f, -3.0f, 0.0f, 1, 1, 2);
|
||||
(this.Ear1 = new ModelRenderer(this, 0, 10)).addBox(-2.0f, -3.0f, 0.0f, 1, 1, 2);
|
||||
this.Ear1.setRotationPoint(0.0f, 15.0f, -9.0f);
|
||||
this.Ear1.setTextureSize(64, 32);
|
||||
this.Ear1.mirror = true;
|
||||
this.setRotation(this.Ear1, 0.0f, 0.0f, 0.0f);
|
||||
(this.Nose = new ModelRenderer((ModelBase) this, 0, 24)).addBox(-1.5f, 0.0f, -4.0f, 3, 2, 2);
|
||||
(this.Nose = new ModelRenderer(this, 0, 24)).addBox(-1.5f, 0.0f, -4.0f, 3, 2, 2);
|
||||
this.Nose.setRotationPoint(0.0f, 15.0f, -9.0f);
|
||||
this.Nose.setTextureSize(64, 32);
|
||||
this.Nose.mirror = true;
|
||||
this.setRotation(this.Nose, 0.0f, 0.0f, 0.0f);
|
||||
(this.Main = new ModelRenderer((ModelBase) this, 0, 0)).addBox(-2.5f, -2.0f, -3.0f, 5, 4, 5);
|
||||
(this.Main = new ModelRenderer(this, 0, 0)).addBox(-2.5f, -2.0f, -3.0f, 5, 4, 5);
|
||||
this.Main.setRotationPoint(0.0f, 15.0f, -9.0f);
|
||||
this.Main.setTextureSize(64, 32);
|
||||
this.Main.mirror = true;
|
||||
this.setRotation(this.Main, 0.0f, 0.0f, 0.0f);
|
||||
(this.Ear2 = new ModelRenderer((ModelBase) this, 6, 10)).addBox(1.0f, -3.0f, 0.0f, 1, 1, 2);
|
||||
(this.Ear2 = new ModelRenderer(this, 6, 10)).addBox(1.0f, -3.0f, 0.0f, 1, 1, 2);
|
||||
this.Ear2.setRotationPoint(0.0f, 15.0f, -9.0f);
|
||||
this.Ear2.setTextureSize(64, 32);
|
||||
this.Ear2.mirror = true;
|
||||
this.setRotation(this.Ear2, 0.0f, 0.0f, 0.0f);
|
||||
(this.HatBuckle = new ModelRenderer((ModelBase) this, 48, 13)).addBox(-1.0f, -4.0f, -3.0f, 2, 1, 1);
|
||||
(this.HatBuckle = new ModelRenderer(this, 48, 13)).addBox(-1.0f, -4.0f, -3.0f, 2, 1, 1);
|
||||
this.HatBuckle.setRotationPoint(0.0f, 15.0f, -9.0f);
|
||||
this.HatBuckle.setTextureSize(64, 32);
|
||||
this.HatBuckle.mirror = true;
|
||||
this.setRotation(this.HatBuckle, 0.0f, 0.0f, 0.0f);
|
||||
(this.HatC = new ModelRenderer((ModelBase) this, 48, 11)).addBox(-0.5f, -7.0f, -1.0f, 1, 1, 1);
|
||||
(this.HatC = new ModelRenderer(this, 48, 11)).addBox(-0.5f, -7.0f, -1.0f, 1, 1, 1);
|
||||
this.HatC.setRotationPoint(0.0f, 15.0f, -9.0f);
|
||||
this.HatC.setTextureSize(64, 32);
|
||||
this.HatC.mirror = true;
|
||||
this.setRotation(this.HatC, 0.0f, 0.0f, 0.0f);
|
||||
(this.HatB = new ModelRenderer((ModelBase) this, 48, 8)).addBox(-1.0f, -6.0f, -1.5f, 2, 1, 2);
|
||||
(this.HatB = new ModelRenderer(this, 48, 8)).addBox(-1.0f, -6.0f, -1.5f, 2, 1, 2);
|
||||
this.HatB.setRotationPoint(0.0f, 15.0f, -9.0f);
|
||||
this.HatB.setTextureSize(64, 32);
|
||||
this.HatB.mirror = true;
|
||||
this.setRotation(this.HatB, 0.0f, 0.0f, 0.0f);
|
||||
(this.HatA = new ModelRenderer((ModelBase) this, 48, 0)).addBox(-1.5f, -5.0f, -2.0f, 3, 2, 3);
|
||||
(this.HatA = new ModelRenderer(this, 48, 0)).addBox(-1.5f, -5.0f, -2.0f, 3, 2, 3);
|
||||
this.HatA.setRotationPoint(0.0f, 15.0f, -9.0f);
|
||||
this.HatA.setTextureSize(64, 32);
|
||||
this.HatA.mirror = true;
|
||||
this.setRotation(this.HatA, 0.0f, 0.0f, 0.0f);
|
||||
(this.HatBase = new ModelRenderer((ModelBase) this, 16, 24)).addBox(-3.0f, -3.0f, -3.5f, 6, 1, 6);
|
||||
(this.HatBase = new ModelRenderer(this, 16, 24)).addBox(-3.0f, -3.0f, -3.5f, 6, 1, 6);
|
||||
this.HatBase.setRotationPoint(0.0f, 15.0f, -9.0f);
|
||||
this.HatBase.setTextureSize(64, 32);
|
||||
this.HatBase.mirror = true;
|
||||
this.setRotation(this.HatBase, 0.0f, 0.0f, 0.0f);
|
||||
(this.LegBackR = new ModelRenderer((ModelBase) this, 8, 13)).addBox(-1.0f, 0.0f, 1.0f, 2, 6, 2);
|
||||
(this.LegBackR = new ModelRenderer(this, 8, 13)).addBox(-1.0f, 0.0f, 1.0f, 2, 6, 2);
|
||||
this.LegBackR.setRotationPoint(-1.1f, 18.0f, 5.0f);
|
||||
this.LegBackR.setTextureSize(64, 32);
|
||||
this.LegBackR.mirror = true;
|
||||
this.setRotation(this.LegBackR, 0.0f, 0.0f, 0.0f);
|
||||
(this.LegFrontL = new ModelRenderer((ModelBase) this, 40, 0)).addBox(-1.0f, 0.0f, 0.0f, 2, 10, 2);
|
||||
(this.LegFrontL = new ModelRenderer(this, 40, 0)).addBox(-1.0f, 0.0f, 0.0f, 2, 10, 2);
|
||||
this.LegFrontL.setRotationPoint(1.2f, 13.8f, -5.0f);
|
||||
this.LegFrontL.setTextureSize(64, 32);
|
||||
this.LegFrontL.mirror = true;
|
||||
this.setRotation(this.LegFrontL, 0.0f, 0.0f, 0.0f);
|
||||
(this.LegFrontR = new ModelRenderer((ModelBase) this, 40, 0)).addBox(-1.0f, 0.0f, 0.0f, 2, 10, 2);
|
||||
(this.LegFrontR = new ModelRenderer(this, 40, 0)).addBox(-1.0f, 0.0f, 0.0f, 2, 10, 2);
|
||||
this.LegFrontR.setRotationPoint(-1.2f, 13.8f, -5.0f);
|
||||
this.LegFrontR.setTextureSize(64, 32);
|
||||
this.LegFrontR.mirror = true;
|
||||
this.setRotation(this.LegFrontR, 0.0f, 0.0f, 0.0f);
|
||||
}
|
||||
|
||||
public void render(
|
||||
final Entity entity,
|
||||
final float f,
|
||||
final float f1,
|
||||
final float f2,
|
||||
final float f3,
|
||||
final float f4,
|
||||
final float f5) {
|
||||
public void render(final Entity entity, final float f, final float f1, final float f2, final float f3,
|
||||
final float f4, final float f5) {
|
||||
this.setRotationAngles(f, f1, f2, f3, f4, f5, entity);
|
||||
this.Body.render(f5);
|
||||
this.Tail1.render(f5);
|
||||
@@ -149,48 +144,46 @@ public class ModelFamiliar extends ModelBase {
|
||||
model.rotateAngleZ = z;
|
||||
}
|
||||
|
||||
public void setRotationAngles(
|
||||
final float p_78087_1_,
|
||||
final float p_78087_2_,
|
||||
final float p_78087_3_,
|
||||
final float p_78087_4_,
|
||||
final float p_78087_5_,
|
||||
final float p_78087_6_,
|
||||
final Entity p_78087_7_) {
|
||||
this.Main.rotateAngleX = p_78087_5_ / 57.295776f;
|
||||
this.Main.rotateAngleY = p_78087_4_ / 57.295776f;
|
||||
this.Nose.rotateAngleX = p_78087_5_ / 57.295776f;
|
||||
this.Nose.rotateAngleY = p_78087_4_ / 57.295776f;
|
||||
this.Ear1.rotateAngleX = p_78087_5_ / 57.295776f;
|
||||
this.Ear1.rotateAngleY = p_78087_4_ / 57.295776f;
|
||||
this.Ear2.rotateAngleX = p_78087_5_ / 57.295776f;
|
||||
this.Ear2.rotateAngleY = p_78087_4_ / 57.295776f;
|
||||
this.HatA.rotateAngleX = p_78087_5_ / 57.295776f;
|
||||
this.HatA.rotateAngleY = p_78087_4_ / 57.295776f;
|
||||
this.HatB.rotateAngleX = p_78087_5_ / 57.295776f;
|
||||
this.HatB.rotateAngleY = p_78087_4_ / 57.295776f;
|
||||
this.HatC.rotateAngleX = p_78087_5_ / 57.295776f;
|
||||
this.HatC.rotateAngleY = p_78087_4_ / 57.295776f;
|
||||
this.HatBuckle.rotateAngleX = p_78087_5_ / 57.295776f;
|
||||
this.HatBuckle.rotateAngleY = p_78087_4_ / 57.295776f;
|
||||
this.HatBase.rotateAngleX = p_78087_5_ / 57.295776f;
|
||||
this.HatBase.rotateAngleY = p_78087_4_ / 57.295776f;
|
||||
public void setRotationAngles(final float p_78087_1_, final float p_78087_2_, final float p_78087_3_,
|
||||
final float p_78087_4_, final float p_78087_5_, final float p_78087_6_, final Entity p_78087_7_) {
|
||||
this.Main.rotateAngleX = p_78087_5_ / (180F / (float) Math.PI);
|
||||
this.Main.rotateAngleY = p_78087_4_ / (180F / (float) Math.PI);
|
||||
this.Nose.rotateAngleX = p_78087_5_ / (180F / (float) Math.PI);
|
||||
this.Nose.rotateAngleY = p_78087_4_ / (180F / (float) Math.PI);
|
||||
this.Ear1.rotateAngleX = p_78087_5_ / (180F / (float) Math.PI);
|
||||
this.Ear1.rotateAngleY = p_78087_4_ / (180F / (float) Math.PI);
|
||||
this.Ear2.rotateAngleX = p_78087_5_ / (180F / (float) Math.PI);
|
||||
this.Ear2.rotateAngleY = p_78087_4_ / (180F / (float) Math.PI);
|
||||
this.HatA.rotateAngleX = p_78087_5_ / (180F / (float) Math.PI);
|
||||
this.HatA.rotateAngleY = p_78087_4_ / (180F / (float) Math.PI);
|
||||
this.HatB.rotateAngleX = p_78087_5_ / (180F / (float) Math.PI);
|
||||
this.HatB.rotateAngleY = p_78087_4_ / (180F / (float) Math.PI);
|
||||
this.HatC.rotateAngleX = p_78087_5_ / (180F / (float) Math.PI);
|
||||
this.HatC.rotateAngleY = p_78087_4_ / (180F / (float) Math.PI);
|
||||
this.HatBuckle.rotateAngleX = p_78087_5_ / (180F / (float) Math.PI);
|
||||
this.HatBuckle.rotateAngleY = p_78087_4_ / (180F / (float) Math.PI);
|
||||
this.HatBase.rotateAngleX = p_78087_5_ / (180F / (float) Math.PI);
|
||||
this.HatBase.rotateAngleY = p_78087_4_ / (180F / (float) Math.PI);
|
||||
if (this.field_78163_i != 3) {
|
||||
this.Body.rotateAngleX = 1.5707964f;
|
||||
this.Body.rotateAngleX = ((float) Math.PI / 2F);
|
||||
if (this.field_78163_i == 2) {
|
||||
this.LegBackL.rotateAngleX = MathHelper.cos(p_78087_1_ * 0.6662f) * 1.0f * p_78087_2_;
|
||||
this.LegBackR.rotateAngleX = MathHelper.cos(p_78087_1_ * 0.6662f + 0.3f) * 1.0f * p_78087_2_;
|
||||
this.LegFrontL.rotateAngleX =
|
||||
MathHelper.cos(p_78087_1_ * 0.6662f + 3.1415927f + 0.3f) * 1.0f * p_78087_2_;
|
||||
this.LegFrontR.rotateAngleX = MathHelper.cos(p_78087_1_ * 0.6662f + 3.1415927f) * 1.0f * p_78087_2_;
|
||||
this.Tail2.rotateAngleX = 1.7278761f + 0.31415927f * MathHelper.cos(p_78087_1_) * p_78087_2_;
|
||||
this.LegFrontL.rotateAngleX = MathHelper.cos(p_78087_1_ * 0.6662f + (float) Math.PI + 0.3f) * 1.0f
|
||||
* p_78087_2_;
|
||||
this.LegFrontR.rotateAngleX = MathHelper.cos(p_78087_1_ * 0.6662f + (float) Math.PI) * 1.0f
|
||||
* p_78087_2_;
|
||||
this.Tail2.rotateAngleX = 1.7278761f
|
||||
+ ((float) Math.PI / 10F) * MathHelper.cos(p_78087_1_) * p_78087_2_;
|
||||
} else {
|
||||
this.LegBackL.rotateAngleX = MathHelper.cos(p_78087_1_ * 0.6662f) * 1.0f * p_78087_2_;
|
||||
this.LegBackR.rotateAngleX = MathHelper.cos(p_78087_1_ * 0.6662f + 3.1415927f) * 1.0f * p_78087_2_;
|
||||
this.LegFrontL.rotateAngleX = MathHelper.cos(p_78087_1_ * 0.6662f + 3.1415927f) * 1.0f * p_78087_2_;
|
||||
this.LegBackR.rotateAngleX = MathHelper.cos(p_78087_1_ * 0.6662f + (float) Math.PI) * 1.0f * p_78087_2_;
|
||||
this.LegFrontL.rotateAngleX = MathHelper.cos(p_78087_1_ * 0.6662f + (float) Math.PI) * 1.0f
|
||||
* p_78087_2_;
|
||||
this.LegFrontR.rotateAngleX = MathHelper.cos(p_78087_1_ * 0.6662f) * 1.0f * p_78087_2_;
|
||||
if (this.field_78163_i == 1) {
|
||||
this.Tail2.rotateAngleX = 1.7278761f + 0.7853982f * MathHelper.cos(p_78087_1_) * p_78087_2_;
|
||||
this.Tail2.rotateAngleX = 1.7278761f
|
||||
+ ((float) Math.PI / 4F) * MathHelper.cos(p_78087_1_) * p_78087_2_;
|
||||
} else {
|
||||
this.Tail2.rotateAngleX = 1.7278761f + 0.47123894f * MathHelper.cos(p_78087_1_) * p_78087_2_;
|
||||
}
|
||||
@@ -198,8 +191,8 @@ public class ModelFamiliar extends ModelBase {
|
||||
}
|
||||
}
|
||||
|
||||
public void setLivingAnimations(
|
||||
final EntityLivingBase p_78086_1_, final float p_78086_2_, final float p_78086_3_, final float p_78086_4_) {
|
||||
public void setLivingAnimations(final EntityLivingBase p_78086_1_, final float p_78086_2_, final float p_78086_3_,
|
||||
final float p_78086_4_) {
|
||||
final EntityOcelot entityocelot = (EntityOcelot) p_78086_1_;
|
||||
this.Body.rotationPointY = 12.0f;
|
||||
this.Body.rotationPointZ = -10.0f;
|
||||
@@ -273,18 +266,18 @@ public class ModelFamiliar extends ModelBase {
|
||||
tail2.rotationPointY -= 4.0f;
|
||||
final ModelRenderer tail3 = this.Tail2;
|
||||
tail3.rotationPointZ += 2.0f;
|
||||
this.Tail1.rotateAngleX = 1.5707964f;
|
||||
this.Tail2.rotateAngleX = 1.5707964f;
|
||||
this.Tail1.rotateAngleX = ((float) Math.PI / 2F);
|
||||
this.Tail2.rotateAngleX = ((float) Math.PI / 2F);
|
||||
this.field_78163_i = 0;
|
||||
} else if (entityocelot.isSprinting()) {
|
||||
this.Tail2.rotationPointY = this.Tail1.rotationPointY;
|
||||
final ModelRenderer tail4 = this.Tail2;
|
||||
tail4.rotationPointZ += 2.0f;
|
||||
this.Tail1.rotateAngleX = 1.5707964f;
|
||||
this.Tail2.rotateAngleX = 1.5707964f;
|
||||
this.Tail1.rotateAngleX = ((float) Math.PI / 2F);
|
||||
this.Tail2.rotateAngleX = ((float) Math.PI / 2F);
|
||||
this.field_78163_i = 2;
|
||||
} else if (entityocelot.isSitting()) {
|
||||
this.Body.rotateAngleX = 0.7853982f;
|
||||
this.Body.rotateAngleX = ((float) Math.PI / 4F);
|
||||
final ModelRenderer body2 = this.Body;
|
||||
body2.rotationPointY -= 4.0f;
|
||||
final ModelRenderer body3 = this.Body;
|
||||
@@ -352,7 +345,7 @@ public class ModelFamiliar extends ModelBase {
|
||||
legFrontL5.rotationPointZ = n7;
|
||||
final ModelRenderer legBackL3 = this.LegBackL;
|
||||
final ModelRenderer legBackR3 = this.LegBackR;
|
||||
final float n8 = -1.5707964f;
|
||||
final float n8 = -((float) Math.PI / 2F);
|
||||
legBackR3.rotateAngleX = n8;
|
||||
legBackL3.rotateAngleX = n8;
|
||||
final ModelRenderer legBackL4 = this.LegBackL;
|
||||
|
||||
+8
-13
@@ -9,6 +9,7 @@ import net.minecraft.client.model.ModelRenderer;
|
||||
import net.minecraft.entity.Entity;
|
||||
|
||||
public class ModelFamiliarHat extends ModelBase {
|
||||
|
||||
ModelRenderer HatBase;
|
||||
ModelRenderer HatA;
|
||||
ModelRenderer HatB;
|
||||
@@ -18,41 +19,35 @@ public class ModelFamiliarHat extends ModelBase {
|
||||
public ModelFamiliarHat() {
|
||||
this.textureWidth = 32;
|
||||
this.textureHeight = 32;
|
||||
(this.HatBase = new ModelRenderer((ModelBase) this, 0, 0)).addBox(0.0f, 0.0f, 0.0f, 7, 1, 7);
|
||||
(this.HatBase = new ModelRenderer(this, 0, 0)).addBox(0.0f, 0.0f, 0.0f, 7, 1, 7);
|
||||
this.HatBase.setRotationPoint(0.0f, 0.0f, 0.0f);
|
||||
this.HatBase.setTextureSize(32, 32);
|
||||
this.HatBase.mirror = true;
|
||||
this.setRotation(this.HatBase, 0.0f, 0.0f, 0.0f);
|
||||
(this.HatA = new ModelRenderer((ModelBase) this, 0, 8)).addBox(0.0f, -1.0f, 1.0f, 5, 2, 5);
|
||||
(this.HatA = new ModelRenderer(this, 0, 8)).addBox(0.0f, -1.0f, 1.0f, 5, 2, 5);
|
||||
this.HatA.setRotationPoint(1.0f, -1.0f, 0.0f);
|
||||
this.HatA.setTextureSize(32, 32);
|
||||
this.HatA.mirror = true;
|
||||
this.setRotation(this.HatA, 0.0f, 0.0f, 0.0f);
|
||||
(this.HatB = new ModelRenderer((ModelBase) this, 0, 15)).addBox(0.0f, 0.0f, 0.0f, 3, 2, 3);
|
||||
(this.HatB = new ModelRenderer(this, 0, 15)).addBox(0.0f, 0.0f, 0.0f, 3, 2, 3);
|
||||
this.HatB.setRotationPoint(2.0f, -4.0f, 2.0f);
|
||||
this.HatB.setTextureSize(32, 32);
|
||||
this.HatB.mirror = true;
|
||||
this.setRotation(this.HatB, 0.0f, 0.0f, 0.0f);
|
||||
(this.HatC = new ModelRenderer((ModelBase) this, 0, 20)).addBox(0.0f, 0.0f, 0.0f, 1, 1, 1);
|
||||
(this.HatC = new ModelRenderer(this, 0, 20)).addBox(0.0f, 0.0f, 0.0f, 1, 1, 1);
|
||||
this.HatC.setRotationPoint(3.0f, -5.0f, 3.0f);
|
||||
this.HatC.setTextureSize(32, 32);
|
||||
this.HatC.mirror = true;
|
||||
this.setRotation(this.HatC, 0.0f, 0.0f, 0.0f);
|
||||
(this.GoldBuckle = new ModelRenderer((ModelBase) this, 0, 22)).addBox(0.0f, 0.0f, 0.0f, 1, 1, 1);
|
||||
(this.GoldBuckle = new ModelRenderer(this, 0, 22)).addBox(0.0f, 0.0f, 0.0f, 1, 1, 1);
|
||||
this.GoldBuckle.setRotationPoint(0.0f, -1.0f, 3.0f);
|
||||
this.GoldBuckle.setTextureSize(32, 32);
|
||||
this.GoldBuckle.mirror = true;
|
||||
this.setRotation(this.GoldBuckle, 0.0f, 0.0f, 0.0f);
|
||||
}
|
||||
|
||||
public void render(
|
||||
final Entity entity,
|
||||
final float f,
|
||||
final float f1,
|
||||
final float f2,
|
||||
final float f3,
|
||||
final float f4,
|
||||
final float f5) {
|
||||
public void render(final Entity entity, final float f, final float f1, final float f2, final float f3,
|
||||
final float f4, final float f5) {
|
||||
super.render(entity, f, f1, f2, f3, f4, f5);
|
||||
this.HatBase.render(f5);
|
||||
this.HatA.render(f5);
|
||||
|
||||
+9
-12
@@ -5,23 +5,20 @@
|
||||
package com.kentington.thaumichorizons.client.renderer.model;
|
||||
|
||||
import net.minecraft.entity.Entity;
|
||||
|
||||
import org.lwjgl.opengl.GL11;
|
||||
|
||||
import thaumcraft.client.renderers.models.entities.ModelGolem;
|
||||
import thaumcraft.common.entities.golems.EntityGolemBase;
|
||||
|
||||
public class ModelGolemTH extends ModelGolem {
|
||||
|
||||
public ModelGolemTH(final boolean p) {
|
||||
super(p);
|
||||
}
|
||||
|
||||
public void setRotationAngles(
|
||||
final Entity en,
|
||||
final float par1,
|
||||
final float par2,
|
||||
final float par3,
|
||||
final float par4,
|
||||
final float par5,
|
||||
final float par6) {
|
||||
public void setRotationAngles(final Entity en, final float par1, final float par2, final float par3,
|
||||
final float par4, final float par5, final float par6) {
|
||||
int core = 0;
|
||||
if (en instanceof EntityGolemBase) {
|
||||
core = ((EntityGolemBase) en).getCore();
|
||||
@@ -31,8 +28,8 @@ public class ModelGolemTH extends ModelGolem {
|
||||
GL11.glColor3f(0.5f + h1, 0.9f + h2, 0.5f + h1);
|
||||
}
|
||||
}
|
||||
this.golemHead.rotateAngleY = par4 / 57.295776f;
|
||||
this.golemHead.rotateAngleX = par5 / 57.295776f;
|
||||
this.golemHead.rotateAngleY = par4 / (180F / (float) Math.PI);
|
||||
this.golemHead.rotateAngleX = par5 / (180F / (float) Math.PI);
|
||||
this.golemRightLeg.rotateAngleX = -1.5f * this.func_78172_a(par1, 13.0f) * par2;
|
||||
this.golemLeftLeg.rotateAngleX = 1.5f * this.func_78172_a(par1, 13.0f) * par2;
|
||||
this.golemRightLeg.rotateAngleY = 0.0f;
|
||||
@@ -41,8 +38,8 @@ public class ModelGolemTH extends ModelGolem {
|
||||
this.golemRightArm.rotateAngleZ = 0.0f;
|
||||
if (core == 6) {
|
||||
final float s = (1.0f - (0.5f + Math.min(64, ((EntityGolemBase) en).getCarryLimit()) / 128.0f)) * 25.0f;
|
||||
this.golemLeftArm.rotateAngleZ = s / 57.295776f;
|
||||
this.golemRightArm.rotateAngleZ = -s / 57.295776f;
|
||||
this.golemLeftArm.rotateAngleZ = s / (180F / (float) Math.PI);
|
||||
this.golemRightArm.rotateAngleZ = -s / (180F / (float) Math.PI);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+41
-48
@@ -4,18 +4,21 @@
|
||||
|
||||
package com.kentington.thaumichorizons.client.renderer.model;
|
||||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import net.minecraft.client.model.ModelBase;
|
||||
import net.minecraft.client.model.ModelRenderer;
|
||||
import net.minecraft.entity.Entity;
|
||||
import net.minecraft.entity.EntityLivingBase;
|
||||
import net.minecraft.entity.passive.EntityOcelot;
|
||||
import net.minecraft.util.MathHelper;
|
||||
|
||||
import org.lwjgl.opengl.GL11;
|
||||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
|
||||
@SideOnly(Side.CLIENT)
|
||||
public class ModelGuardianPanther extends ModelBase {
|
||||
|
||||
ModelRenderer ocelotBackLeftLeg;
|
||||
ModelRenderer ocelotBackRightLeg;
|
||||
ModelRenderer ocelotFrontLeftLeg;
|
||||
@@ -25,7 +28,6 @@ public class ModelGuardianPanther extends ModelBase {
|
||||
ModelRenderer ocelotHead;
|
||||
ModelRenderer ocelotBody;
|
||||
int field_78163_i;
|
||||
private static final String __OBFID = "CL_00000848";
|
||||
|
||||
public ModelGuardianPanther() {
|
||||
this.field_78163_i = 1;
|
||||
@@ -33,36 +35,30 @@ public class ModelGuardianPanther extends ModelBase {
|
||||
this.setTextureOffset("head.nose", 0, 24);
|
||||
this.setTextureOffset("head.ear1", 0, 10);
|
||||
this.setTextureOffset("head.ear2", 6, 10);
|
||||
(this.ocelotHead = new ModelRenderer((ModelBase) this, "head")).addBox("main", -5.0f, -4.0f, -6.0f, 10, 8, 10);
|
||||
(this.ocelotHead = new ModelRenderer(this, "head")).addBox("main", -5.0f, -4.0f, -6.0f, 10, 8, 10);
|
||||
this.ocelotHead.addBox("nose", -3.0f, 0.0f, -8.0f, 6, 4, 4);
|
||||
this.ocelotHead.addBox("ear1", -4.0f, -6.0f, 0.0f, 2, 2, 4);
|
||||
this.ocelotHead.addBox("ear2", 2.0f, -6.0f, 0.0f, 2, 2, 4);
|
||||
this.ocelotHead.setRotationPoint(0.0f, 30.0f, -18.0f);
|
||||
(this.ocelotBody = new ModelRenderer((ModelBase) this, 20, 0)).addBox(-4.0f, 6.0f, -16.0f, 8, 32, 12, 0.0f);
|
||||
(this.ocelotBody = new ModelRenderer(this, 20, 0)).addBox(-4.0f, 6.0f, -16.0f, 8, 32, 12, 0.0f);
|
||||
this.ocelotBody.setRotationPoint(0.0f, 24.0f, -20.0f);
|
||||
(this.ocelotTail = new ModelRenderer((ModelBase) this, 0, 15)).addBox(-1.0f, 0.0f, 0.0f, 2, 16, 2);
|
||||
(this.ocelotTail = new ModelRenderer(this, 0, 15)).addBox(-1.0f, 0.0f, 0.0f, 2, 16, 2);
|
||||
this.ocelotTail.rotateAngleX = 0.9f;
|
||||
this.ocelotTail.setRotationPoint(0.0f, 30.0f, 16.0f);
|
||||
(this.ocelotTail2 = new ModelRenderer((ModelBase) this, 4, 15)).addBox(-1.0f, 0.0f, 0.0f, 2, 16, 2);
|
||||
(this.ocelotTail2 = new ModelRenderer(this, 4, 15)).addBox(-1.0f, 0.0f, 0.0f, 2, 16, 2);
|
||||
this.ocelotTail2.setRotationPoint(0.0f, 40.0f, 28.0f);
|
||||
(this.ocelotBackLeftLeg = new ModelRenderer((ModelBase) this, 8, 13)).addBox(-2.0f, 0.0f, 2.0f, 4, 12, 4);
|
||||
(this.ocelotBackLeftLeg = new ModelRenderer(this, 8, 13)).addBox(-2.0f, 0.0f, 2.0f, 4, 12, 4);
|
||||
this.ocelotBackLeftLeg.setRotationPoint(2.2f, 36.0f, 10.0f);
|
||||
(this.ocelotBackRightLeg = new ModelRenderer((ModelBase) this, 8, 13)).addBox(-2.0f, 0.0f, 2.0f, 4, 12, 4);
|
||||
(this.ocelotBackRightLeg = new ModelRenderer(this, 8, 13)).addBox(-2.0f, 0.0f, 2.0f, 4, 12, 4);
|
||||
this.ocelotBackRightLeg.setRotationPoint(-2.2f, 36.0f, 10.0f);
|
||||
(this.ocelotFrontLeftLeg = new ModelRenderer((ModelBase) this, 40, 0)).addBox(-2.0f, 0.0f, 0.0f, 4, 20, 4);
|
||||
(this.ocelotFrontLeftLeg = new ModelRenderer(this, 40, 0)).addBox(-2.0f, 0.0f, 0.0f, 4, 20, 4);
|
||||
this.ocelotFrontLeftLeg.setRotationPoint(2.4f, 27.6f, -10.0f);
|
||||
(this.ocelotFrontRightLeg = new ModelRenderer((ModelBase) this, 40, 0)).addBox(-1.0f, 0.0f, 0.0f, 4, 10, 4);
|
||||
(this.ocelotFrontRightLeg = new ModelRenderer(this, 40, 0)).addBox(-1.0f, 0.0f, 0.0f, 4, 10, 4);
|
||||
this.ocelotFrontRightLeg.setRotationPoint(-2.4f, 27.6f, -10.0f);
|
||||
}
|
||||
|
||||
public void render(
|
||||
final Entity p_78088_1_,
|
||||
final float p_78088_2_,
|
||||
final float p_78088_3_,
|
||||
final float p_78088_4_,
|
||||
final float p_78088_5_,
|
||||
final float p_78088_6_,
|
||||
final float p_78088_7_) {
|
||||
public void render(final Entity p_78088_1_, final float p_78088_2_, final float p_78088_3_, final float p_78088_4_,
|
||||
final float p_78088_5_, final float p_78088_6_, final float p_78088_7_) {
|
||||
this.setRotationAngles(p_78088_2_, p_78088_3_, p_78088_4_, p_78088_5_, p_78088_6_, p_78088_7_, p_78088_1_);
|
||||
if (this.isChild) {
|
||||
final float f6 = 2.0f;
|
||||
@@ -94,35 +90,32 @@ public class ModelGuardianPanther extends ModelBase {
|
||||
}
|
||||
}
|
||||
|
||||
public void setRotationAngles(
|
||||
final float p_78087_1_,
|
||||
final float p_78087_2_,
|
||||
final float p_78087_3_,
|
||||
final float p_78087_4_,
|
||||
final float p_78087_5_,
|
||||
final float p_78087_6_,
|
||||
final Entity p_78087_7_) {
|
||||
this.ocelotHead.rotateAngleX = p_78087_5_ / 57.295776f;
|
||||
this.ocelotHead.rotateAngleY = p_78087_4_ / 57.295776f;
|
||||
public void setRotationAngles(final float p_78087_1_, final float p_78087_2_, final float p_78087_3_,
|
||||
final float p_78087_4_, final float p_78087_5_, final float p_78087_6_, final Entity p_78087_7_) {
|
||||
this.ocelotHead.rotateAngleX = p_78087_5_ / (180F / (float) Math.PI);
|
||||
this.ocelotHead.rotateAngleY = p_78087_4_ / (180F / (float) Math.PI);
|
||||
if (this.field_78163_i != 3) {
|
||||
this.ocelotBody.rotateAngleX = 1.5707964f;
|
||||
this.ocelotBody.rotateAngleX = ((float) Math.PI / 2F);
|
||||
if (this.field_78163_i == 2) {
|
||||
this.ocelotBackLeftLeg.rotateAngleX = MathHelper.cos(p_78087_1_ * 0.6662f) * 1.0f * p_78087_2_;
|
||||
this.ocelotBackRightLeg.rotateAngleX = MathHelper.cos(p_78087_1_ * 0.6662f + 0.3f) * 1.0f * p_78087_2_;
|
||||
this.ocelotFrontLeftLeg.rotateAngleX =
|
||||
MathHelper.cos(p_78087_1_ * 0.6662f + 3.1415927f + 0.3f) * 1.0f * p_78087_2_;
|
||||
this.ocelotFrontRightLeg.rotateAngleX =
|
||||
MathHelper.cos(p_78087_1_ * 0.6662f + 3.1415927f) * 1.0f * p_78087_2_;
|
||||
this.ocelotTail2.rotateAngleX = 1.7278761f + 0.31415927f * MathHelper.cos(p_78087_1_) * p_78087_2_;
|
||||
this.ocelotFrontLeftLeg.rotateAngleX = MathHelper.cos(p_78087_1_ * 0.6662f + (float) Math.PI + 0.3f)
|
||||
* 1.0f
|
||||
* p_78087_2_;
|
||||
this.ocelotFrontRightLeg.rotateAngleX = MathHelper.cos(p_78087_1_ * 0.6662f + (float) Math.PI) * 1.0f
|
||||
* p_78087_2_;
|
||||
this.ocelotTail2.rotateAngleX = 1.7278761f
|
||||
+ ((float) Math.PI / 10F) * MathHelper.cos(p_78087_1_) * p_78087_2_;
|
||||
} else {
|
||||
this.ocelotBackLeftLeg.rotateAngleX = MathHelper.cos(p_78087_1_ * 0.6662f) * 1.0f * p_78087_2_;
|
||||
this.ocelotBackRightLeg.rotateAngleX =
|
||||
MathHelper.cos(p_78087_1_ * 0.6662f + 3.1415927f) * 1.0f * p_78087_2_;
|
||||
this.ocelotFrontLeftLeg.rotateAngleX =
|
||||
MathHelper.cos(p_78087_1_ * 0.6662f + 3.1415927f) * 1.0f * p_78087_2_;
|
||||
this.ocelotBackRightLeg.rotateAngleX = MathHelper.cos(p_78087_1_ * 0.6662f + (float) Math.PI) * 1.0f
|
||||
* p_78087_2_;
|
||||
this.ocelotFrontLeftLeg.rotateAngleX = MathHelper.cos(p_78087_1_ * 0.6662f + (float) Math.PI) * 1.0f
|
||||
* p_78087_2_;
|
||||
this.ocelotFrontRightLeg.rotateAngleX = MathHelper.cos(p_78087_1_ * 0.6662f) * 1.0f * p_78087_2_;
|
||||
if (this.field_78163_i == 1) {
|
||||
this.ocelotTail2.rotateAngleX = 1.7278761f + 0.7853982f * MathHelper.cos(p_78087_1_) * p_78087_2_;
|
||||
this.ocelotTail2.rotateAngleX = 1.7278761f
|
||||
+ ((float) Math.PI / 4F) * MathHelper.cos(p_78087_1_) * p_78087_2_;
|
||||
} else {
|
||||
this.ocelotTail2.rotateAngleX = 1.7278761f + 0.47123894f * MathHelper.cos(p_78087_1_) * p_78087_2_;
|
||||
}
|
||||
@@ -130,8 +123,8 @@ public class ModelGuardianPanther extends ModelBase {
|
||||
}
|
||||
}
|
||||
|
||||
public void setLivingAnimations(
|
||||
final EntityLivingBase p_78086_1_, final float p_78086_2_, final float p_78086_3_, final float p_78086_4_) {
|
||||
public void setLivingAnimations(final EntityLivingBase p_78086_1_, final float p_78086_2_, final float p_78086_3_,
|
||||
final float p_78086_4_) {
|
||||
final EntityOcelot entityocelot = (EntityOcelot) p_78086_1_;
|
||||
this.ocelotBody.rotationPointY = 12.0f;
|
||||
this.ocelotBody.rotationPointZ = -10.0f;
|
||||
@@ -173,18 +166,18 @@ public class ModelGuardianPanther extends ModelBase {
|
||||
ocelotTail2.rotationPointY -= 4.0f;
|
||||
final ModelRenderer ocelotTail3 = this.ocelotTail2;
|
||||
ocelotTail3.rotationPointZ += 2.0f;
|
||||
this.ocelotTail.rotateAngleX = 1.5707964f;
|
||||
this.ocelotTail2.rotateAngleX = 1.5707964f;
|
||||
this.ocelotTail.rotateAngleX = ((float) Math.PI / 2F);
|
||||
this.ocelotTail2.rotateAngleX = ((float) Math.PI / 2F);
|
||||
this.field_78163_i = 0;
|
||||
} else if (entityocelot.isSprinting()) {
|
||||
this.ocelotTail2.rotationPointY = this.ocelotTail.rotationPointY;
|
||||
final ModelRenderer ocelotTail4 = this.ocelotTail2;
|
||||
ocelotTail4.rotationPointZ += 2.0f;
|
||||
this.ocelotTail.rotateAngleX = 1.5707964f;
|
||||
this.ocelotTail2.rotateAngleX = 1.5707964f;
|
||||
this.ocelotTail.rotateAngleX = ((float) Math.PI / 2F);
|
||||
this.ocelotTail2.rotateAngleX = ((float) Math.PI / 2F);
|
||||
this.field_78163_i = 2;
|
||||
} else if (entityocelot.isSitting()) {
|
||||
this.ocelotBody.rotateAngleX = 0.7853982f;
|
||||
this.ocelotBody.rotateAngleX = ((float) Math.PI / 4F);
|
||||
final ModelRenderer ocelotBody2 = this.ocelotBody;
|
||||
ocelotBody2.rotationPointY -= 4.0f;
|
||||
final ModelRenderer ocelotBody3 = this.ocelotBody;
|
||||
@@ -220,7 +213,7 @@ public class ModelGuardianPanther extends ModelBase {
|
||||
ocelotFrontLeftLeg5.rotationPointZ = n7;
|
||||
final ModelRenderer ocelotBackLeftLeg3 = this.ocelotBackLeftLeg;
|
||||
final ModelRenderer ocelotBackRightLeg3 = this.ocelotBackRightLeg;
|
||||
final float n8 = -1.5707964f;
|
||||
final float n8 = -((float) Math.PI / 2F);
|
||||
ocelotBackRightLeg3.rotateAngleX = n8;
|
||||
ocelotBackLeftLeg3.rotateAngleX = n8;
|
||||
final ModelRenderer ocelotBackLeftLeg4 = this.ocelotBackLeftLeg;
|
||||
|
||||
Loaded 100 of 642 files, more files were not shown because too many files have changed in this diff.
Show more
Reference in new issue
Block a user