Compare commits

...
149 Commits
Author SHA1 Message Date
Harald Korneliussen 6523b26038 Fixes mooshroom infusion crash (#136) 2026-10-25 10:49:27 +01:00
Edgar Su 5a6b05f13c fix liquefaction focus not making lava (#147) 2026-10-03 20:23:20 -05:00
micvog 51763e0f80 Fix Synthskin draining Nutrition while the hunger bar is full (#148) 2026-09-30 14:03:11 +00:00
Martin Robertz 21ab790045 update+gradle+bs+deps+gitignore
fix curse auto uploader
2026-09-18 00:28:41 +02:00
f42bcf230b Fix cloned mob item dupe (#122)
Co-authored-by: tiffit <10173431+tiffit@users.noreply.github.com>
Co-authored-by: Martin Robertz <dream-master@gmx.net>
Co-authored-by: Nikolay S. <nicksitnikov@gmail.com>
2026-09-07 19:33:28 +00:00
Martin Robertz e985a0c763 update+bs+deps 2026-09-06 19:21:48 +02:00
Mykhailo Balakerandkoolkrafter5 d9867a343e Fix Ethereal Shard ClassCastException upon being jared (#141)
Co-authored-by: koolkrafter5 <creepersrgreen@gmail.com>
2026-09-06 19:06:11 +02:00
Ableytner ec0a44d6dd Display Warded Syringe with correct NBT data in NEI (#137) 2026-07-31 19:37:21 +02:00
tiffit b2186e92f9 Move pocket plane generation back to main server thread (#134) 2026-07-11 14:30:28 +02:00
koolkrafter5 f619f97928 Fix null wand components (#126) 2026-05-25 16:52:22 +02:00
thehoblit f542637140 Fix golem dupe (#125) 2026-05-21 23:44:47 -07:00
Eldrinn-Elantey 23469f5e5b Simplify BlockGatewayPortal switch expressions (#124) 2026-05-16 16:47:10 +02:00
Eldrinn-Elantey c1730a50d9 replace magic numbers with named constants and fix exception handling (#120) 2026-05-15 22:28:59 +02:00
Eldrinn-Elantey 1ef8e16e9c Fix stabilizer restoring hungry node type when second stabilizer is still active (#121) 2026-05-14 14:36:08 -07:00
Eldrinn-Elanteyandthehoblit a084621884 Clean up decompiler artifacts in TileVortex files (#117)
Co-authored-by: thehoblit <thehoblit@gmail.com>
2026-05-14 11:29:50 -07:00
Eldrinn-Elantey f4f7e27bca Fix remaining gateway portal texture bugs (#119) 2026-05-14 11:18:30 -07:00
Eldrinn-Elanteyandthehoblit db3f4e0cba Fix vortex flicker on chunk reload and stabilizer sync (#116)
Co-authored-by: thehoblit <thehoblit@gmail.com>
2026-05-14 09:43:40 -07:00
Eldrinn-Elantey 2768e1b1eb Fix player orientation on pocket plane portal exit (#115) 2026-05-14 08:47:30 -07:00
Eldrinn-Elantey 0a54bd5465 Fix pocket plane keystone binding, portal bugs and world saving (#114) 2026-05-14 01:07:38 -04:00
Alexdoru 892f8941e2 Fix two world leaks (#110) 2026-04-22 18:11:09 +00:00
ROBERT-PARKOURCIVILIZATIONGOD 5b04ae1082 Fix NPE in generatePocketPlane during async vortex creation (#111) 2026-04-22 13:03:35 -05:00
Martin Robertz 1dc5f139e5 update+gradle+bs+deps 2026-04-06 11:42:04 +02:00
Ranzu ad2c1bcc5f Corrected guis bounds (#109) 2026-04-05 23:18:54 +02:00
UltraProdigy 8546cab959 Optimize Images & Workflow (#108) 2026-03-16 08:47:43 +00:00
Yoshy f69e39227e fix typos (#105) 2026-01-28 06:25:37 -05:00
Caedis 06def1b332 Synth Node now consumes the entire stack of essense instead of 1 (#102) 2025-11-22 11:37:31 +01:00
Aerindor of Arcane a351ef46b4 Potion ID configs Added [Issue #97] (#99) 2025-11-12 06:35:20 +00:00
koolkrafter5andRecursivePineapple 33cc4943a7 Improved Dispenser Functionality (#94)
Co-authored-by: RecursivePineapple <recursive_pineapple@proton.me>
2025-11-12 05:09:09 +00:00
Martin Robertz 5f37e3aa3d update 2025-10-25 17:28:20 +02:00
DarkShadow44 7eb409820b Fix nullpointer crash when exploding Alchemite (#100) 2025-10-25 17:03:57 +02:00
Martin Robertz ce27ffd52d update 2025-10-16 10:48:22 +02:00
551cdf4a93 Soul Beacon Event Handler Cleanup (#93)
Co-authored-by: Martin Robertz <dream-master@gmx.net>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-10-12 23:36:36 +02:00
Martin Robertz 5a14114583 update 2025-10-02 01:51:49 +02:00
Martin Robertz fc0cc6a074 update 2025-09-22 18:36:53 +02:00
Aerindor of Arcane 47c06267c1 Add client-side vortex sound in TileVortex (#96) 2025-09-22 11:55:29 +02:00
Alexdoru 76258cd038 Cache Tessellator#instance in local var (#92) 2025-07-18 12:48:17 -07:00
Maya 2ee312ccd1 update 2025-07-04 13:13:21 -06:00
Abdiel Kavash 5c7028c645 Fix Illumine Lens interaction with other sources of night vision. (#91) 2025-07-04 13:13:12 -06:00
Martin Robertz e94bc0d510 update 2025-05-16 22:08:54 +02:00
Caedis 8a84cfcd4d Replace Baubles with Baubles Expanded (#86) 2025-05-13 14:22:03 +02:00
Maya 52bd07d4c4 update 2025-04-08 22:56:28 -05:00
Glease b75095d013 fix missing draw call and missing texture bind (#84) 2025-04-08 22:56:20 -05:00
Martin Robertz 0c4a02cd0e update 2025-01-19 20:39:09 +01:00
b7b9c9a9b5 Fixes Liquefaction Focus (#72)
Co-authored-by: Martin Robertz <dream-master@gmx.net>
Co-authored-by: Maya <10861407+serenibyss@users.noreply.github.com>
2025-01-19 06:45:19 +00:00
Martin Robertz c9db9f26d1 update 2025-01-03 22:12:58 +01:00
glowredman 15532b7fd0 Add Localizations (#82) 2025-01-02 17:47:17 +00:00
Martin Robertz e510cd9915 update 2024-11-23 16:48:30 +01:00
chochem 531fedbe37 make thaumic horizons listen to its config (#79) 2024-11-20 12:39:46 +01:00
Maya 6f9e5faafe add issue templates 2024-11-11 04:54:26 -06:00
Martin Robertz 43e607e578 update 2024-11-08 00:41:42 +01:00
Abdiel Kavash 4db45f94b6 Fix setDead() if mob is not dead yet. (#78) 2024-11-05 11:25:08 +01:00
NotAPenguin 2d57926762 Update gt and rename (#76) 2024-09-03 17:05:06 +02:00
Raven Szewczyk 7f42969bb8 Switch decompiler constants to their named variants (#70)
Just ran `./gradlew applyDecompilerCleanupToMain` to make the code more readable
2024-05-06 12:37:05 +02:00
Martin Robertz b290dba600 update 2024-05-06 09:13:07 +02:00
くぁーりぃ ec59afb3a8 add missing BlendFunc (#69) 2024-05-06 06:36:40 +02:00
Martin Robertz 8026516a3b update 2024-04-18 20:47:37 +02:00
Alastors 6676a54693 fix for gt6 (#67) 2024-04-18 15:38:25 +02:00
Jason Mitchell a63c0ab6ed Update BS (#66) 2024-03-20 08:18:33 -07:00
Raven Szewczyk 73e77b70db [ci skip] upgraded build system 2024-02-04 20:02:22 +00:00
Martin Robertz ca1827a47b update bs+deps 2024-01-12 20:56:46 +01:00
Raven Szewczyk b2377724f4 [ci skip] upgraded build system 2024-01-08 21:29:48 +00:00
bombcar 7a22b94592 Correct name application for Nightmare (#62)
* update dependencies

* fix name
2023-12-20 19:29:42 +01:00
Martin Robertz 382234cc72 update gradle + bes+ deps 2023-12-17 00:06:15 +01:00
Ethryan 975c987d81 New lens textures (#61)
* Baseline

* Warp lenses

* Update voidmetal frame
2023-12-16 23:26:48 +01:00
Martin Robertz b574a509b2 update gradle 2023-11-29 20:44:42 +01:00
Gordon-Frohmanandbombcar c83c5795fd Alternative russian translation (#60)
* Update ru_RU.lang

Alternative russian translation

* Update ru_RU.lang

Removed an extra line
Should be easier to compare now

* Update ru_RU.lang

Removed all extra lines
How did they even translate without those?

* Update ru_RU.lang

Now adding more lines
Jeez

* Update ru_RU.lang

Fixed a wrong translation I just noticed

* Update ru_RU.lang

Updated translation again

* Update ru_RU.lang

* Update ru_RU.lang

* Update ru_RU.lang

* update BS and spotlessApply

---------

Co-authored-by: bombcar <github@bombcar.com>
2023-11-29 10:44:32 -06:00
Glease 68f767e728 validate player has the prereq self infusion before doing what player has requested (#54) 2023-08-02 17:43:30 +08:00
DrParadox7 1e1aab9c7d Removed GT dependency on Pocket Plane (#52)
Pocket Dimensions are no longer locked behind GT being present, only its custom recipes added in PR #13
2023-07-02 19:11:03 -04:00
Jason Mitchell 7c697bbcb1 Add Modrinth publishing 2023-06-28 19:36:18 -07:00
Alastors 618164a27e Planar fix (#50)
* Revert "remove commented-out code and obscure comments"

This reverts commit 6517272910.

* Fixing the planar vortex

* Revert "Revert "remove commented-out code and obscure comments""

This reverts commit 6d464b89ca.

* spotless
2023-06-28 13:03:14 -04:00
Jason Mitchell 48c8e68417 Add CF Publishing (#45) 2023-06-26 17:28:38 -07:00
Jason Mitchell 900cfe249b Update README.md 2023-06-26 17:04:42 -07:00
Martin Robertz 8a482aeaff Merge pull request #44 from chill-was-taken/remove-commented-code
Remove commented-out code and obscure comments
2023-06-18 14:36:29 +02:00
chill 6517272910 remove commented-out code and obscure comments 2023-06-18 14:13:52 +02:00
Martin Robertz b4b80bd72c Merge pull request #43 from chill-was-taken/code-cleanup
Code cleanup
2023-06-18 13:34:04 +02:00
chill 2ecc5e7c35 fix typos and formatting in Readme 2023-06-18 12:47:23 +02:00
chill 801a7f78a3 remove unused TileVortex imports
During the rebase, some commit brought the imports back.
They were removed by Spotless when the project was built.
2023-06-18 12:45:48 +02:00
chill 71df83d933 use pattern variables in instanceof 2023-06-18 12:13:10 +02:00
chill fc923e182c use enhanced switch 2023-06-18 12:13:10 +02:00
chill 6984aaead7 enable modern syntax through Jabel 2023-06-18 12:13:10 +02:00
chill df47180317 remove redundant type casts
Also apply missing diamond operator because resolving a merge conflict messed
up with TileVortex.
2023-06-18 12:12:22 +02:00
chill 325fa23585 remove redundant array creation 2023-06-18 12:06:54 +02:00
chill 785bb27638 replace substring call by startsWith 2023-06-18 12:06:54 +02:00
chill 08fe020650 replace same values with a variable 2023-06-18 12:06:54 +02:00
chill 9f769476a6 rename adjusted critter health 2023-06-18 12:06:54 +02:00
chill d3fd6376dc rename adjusted selfInfusionHealth 2023-06-18 12:06:54 +02:00
chill f16650e95a replace manual min and max calculations 2023-06-18 12:06:54 +02:00
chill 3215c7c47a replace manual array filling 2023-06-18 12:06:54 +02:00
chill 7112eb8f41 merge duplicate switch branches 2023-06-18 12:06:54 +02:00
chill 17e20e08fc remove conditions that are covered by further conditions 2023-06-18 12:06:54 +02:00
chill 9fb1d4b332 add todo to check the correctness of the call 2023-06-18 12:06:54 +02:00
chill e6f2db0139 fix incorrect string comparison 2023-06-18 12:06:54 +02:00
chill 7d0738de7a variable already assigned to this value 2023-06-18 12:06:54 +02:00
chill 39a295f3e5 rename stack in slot 2023-06-18 12:06:54 +02:00
chill d8fbdd145d rename crafting inventory 2023-06-18 12:06:54 +02:00
chill 87baa5963f update type to a primitive where possible 2023-06-18 12:06:54 +02:00
chill 673f37a1ec replace string by StringBuilder 2023-06-18 12:06:54 +02:00
chill 75a5c8be44 simplify array copy 2023-06-18 12:06:54 +02:00
chill 6be38cc693 simplify array population 2023-06-18 12:06:54 +02:00
chill f0dfce4c27 remove pointless arithmetic expressions 2023-06-18 12:06:54 +02:00
chill 25de863764 cast integer multiplication to long 2023-06-18 12:06:54 +02:00
chill 29d3d2d25a simplify Map operations 2023-06-18 12:06:54 +02:00
chill 26debe826f replace override with lambda 2023-06-18 12:06:54 +02:00
chill 1e8cc79148 replace explicit types with diamond operators 2023-06-18 12:06:48 +02:00
chill 2012f27d74 remove unnecessary boxing 2023-06-18 12:05:41 +02:00
chill ed7913739a refactor addInformation: rename hashmap into what it probably is for 2023-06-18 12:05:41 +02:00
chill ff212745a3 refactor addInformation: rename probably converted amount 2023-06-18 12:05:41 +02:00
chill 43d5d94c92 refactor addInformation: rename value amount 2023-06-18 12:05:41 +02:00
chill a21d447ed0 refactor addInformation: remove redundant cast 2023-06-18 12:05:41 +02:00
chill 3f84e365e3 refactor addInformation: rename entry value 2023-06-18 12:05:41 +02:00
chill f9c2aa5c10 refactor addInformation: rename map entry 2023-06-18 12:05:41 +02:00
chill d7c261316f refactor addInformation: remove redundant string 2023-06-18 12:05:41 +02:00
chill 0bdbbb0d11 refactor addInformation: use map.isEmpty instead of map.size 2023-06-18 12:05:41 +02:00
chill 8323771c10 refactor addInformation: rename attribute modifier 2023-06-18 12:05:41 +02:00
chill db13268550 refactor addInformation: remove redundant cast 2023-06-18 12:05:41 +02:00
chill e8e8ae934f refactor addInformation: rename entry value 2023-06-18 12:05:40 +02:00
chill 33402b81ae refactor addInformation: add empty lines for visual clarity 2023-06-18 12:05:40 +02:00
chill 9a0b266519 refactor addInformation: rename message variable 2023-06-18 12:05:40 +02:00
chill d3ecb3eab6 refactor addInformation: use typed generics rather than raw ones 2023-06-18 12:05:40 +02:00
chill 6a6952cb29 refactor addInformation: rename potion-effects list 2023-06-18 12:05:40 +02:00
chill 0cd8f3ecc2 refactor addInformation: rename input parameters 2023-06-18 12:05:40 +02:00
chill 8634f9e288 refactor While into For 2023-06-18 12:05:40 +02:00
chill d01fd12b68 refactor EventHandlerEntity.applyNewAI 2023-06-18 12:05:40 +02:00
chill 932c06c396 remove redundant casts 2023-06-18 12:05:40 +02:00
chill 8b23575edb fix raw use of parameterized types where possible 2023-06-18 12:05:40 +02:00
chill 69d63f22b5 enhanced for loops 2023-06-18 12:05:40 +02:00
chill cbf90c89d3 make nested classes static where possible
A static inner class does not keep an implicit reference to its enclosing
instance. This prevents a common cause of memory leaks and uses less memory
per instance of the class.
2023-06-18 12:05:40 +02:00
chill ec3d51f69a properly access static fields by referencing the class 2023-06-18 12:05:40 +02:00
chill 69c22b51bc remove unused local variables 2023-06-18 12:05:40 +02:00
chill 90bb0b6621 inline variables 2023-06-18 12:05:40 +02:00
chill 3ff1e2ae3d simplify IFs 2023-06-18 12:05:40 +02:00
chill f768215031 explicitly state that the exception is ignored 2023-06-18 12:05:40 +02:00
chill c4ec1dadd3 replace 1-branch switches with if 2023-06-18 12:05:40 +02:00
chill 3444b1132f extract common parts from ifs 2023-06-18 12:05:40 +02:00
chill 9e7cfebeca remove private modifier from an enum constructor
Enum constructors are private by definition.
2023-06-18 12:05:40 +02:00
chill 89dd677196 make private fields final where fitting 2023-06-18 12:05:40 +02:00
chill e3945f8e84 rename method parameters 2023-06-18 12:05:39 +02:00
chill cda63c4433 rename private class field 2023-06-18 12:05:39 +02:00
chill 38c7e8d005 remove commented code 2023-06-18 12:05:39 +02:00
chill 65d603bf6f update fields from private to private static final
That is done to retain the explanation of what this value does.
Alternatively, the variable could be inlined, but then it would be harder to
understand what exactly this value is for.
2023-06-18 12:05:39 +02:00
chill 4cf447e0a0 update dependencies to api from compile 2023-06-18 12:05:39 +02:00
Martin Robertz f629ad06b7 Merge pull request #42 from chill-was-taken/remove-unsafe-threading
Remove unsafe threading
2023-06-18 11:10:17 +02:00
chill 5032732d9a Remove unsafe not-working threading
The threading was not working because `Thread.run()` does not start a new
thread. `Thread.start()` should've been used for that.

First two `if`s can be summarized as "if dimension is not created then create
it, and if it's already created then handle it".

Because `createDimension` is now single-threaded, we can call it without
checking if it's already in the process of creating a dimension.

The handling of creating a dimension was put in `createDimension`.
2023-06-16 15:24:07 +02:00
Alastors 2505febd51 Merge pull request #41 from Alastors/LGPL-branch 2023-06-14 15:48:27 -04:00
chill e229b31ef9 gradle spotlessApply 2023-06-14 21:30:05 +02:00
chill e7c5c19bb3 gradle updateBuildScript 2023-06-14 21:29:00 +02:00
Alastors 1225c68a9e updated readme 2023-06-14 15:24:51 -04:00
Alastors fbe0a42337 have to do this to fix it 2023-06-14 15:12:09 -04:00
Alastors 10a2ef93a5 Updating license
As per the conversation (https://discord.com/channels/181078474394566657/1029918255932002395/1118371683879895051) in #Magic-Dev, I am updating the license of (this repo of) Thaumic Horizons
2023-06-14 13:32:37 -04:00
574 changed files with 6387 additions and 8476 deletions

No files matched your search

+62
View File
@@ -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
+17
View File
@@ -0,0 +1,17 @@
name: Optimize images
on:
pull_request:
branches: [ master, main, release/** ]
paths:
- "**/*.png"
push:
branches: [ master, main, release/** ]
paths:
- "**/*.png"
jobs:
optimize-images:
uses: GTNewHorizons/GTNH-Actions-Workflows/.github/workflows/optimize-images.yml@master
secrets: inherit
+2
View File
@@ -27,5 +27,7 @@ whitelist.json
*.iws
src/main/resources/mixins.*.json
*.bat
*.sh
*.DS_Store
!gradlew.bat
layout.json
+162 -7
View File
@@ -1,10 +1,165 @@
License per https://www.minecraftforum.net/forums/mapping-and-modding-java-edition/minecraft-mods/2361575-thaumic-horizons-v1-1-9-thaumcraft-4-addon
GNU LESSER GENERAL PUBLIC LICENSE
Version 3, 29 June 2007
Thaumic Horizons' conditions of use in modpacks are based on Thaumcraft's own:
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.
1. Your mod pack must link to this forum post.
2. You cannot directly profit off of the mod pack - although streaming videos are fine and even encouraged.
3. You cannot claim ownership of the mod or any of its elements.
4. Please let me know when you add Thaumic Horizons to any publicly-available mod pack.
5. I reserve the right to alter, remove, or add any conditions for good reasons or on a random whim.
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.
+16 -1
View File
@@ -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
![license-support--1](license-support--1.png)
![license-support-0](license-support-0.png)
![license-support-1](license-support-1.png)
![license-support-2](license-support-2.png)
+2 -1259
View File
File diff suppressed because it is too large. Load diff
+4 -3
View File
@@ -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.254:dev') {transitive = false}
runtimeOnlyNonPublishable('com.github.GTNewHorizons:AspectRecipeIndex:1.1.5:dev')
}
+203 -24
View File
@@ -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
+12
View File
@@ -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
Binary file not shown.
+4 -1
View File
@@ -1,6 +1,9 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-7.6-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-9.7.1-bin.zip
networkTimeout=10000
retries=0
retryBackOffMs=500
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
Vendored
+24 -20
View File
@@ -1,7 +1,7 @@
#!/bin/sh
#
# Copyright © 2015-2021 the original 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,10 +15,12 @@
# 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 POSIX generated by Gradle.
# gradlew start up script for POSIX generated by Gradle.
#
# Important for running:
#
@@ -27,7 +29,7 @@
# bash, then to run this script, type that shell name before the whole
# command line, like:
#
# ksh Gradle
# ksh gradlew
#
# Busybox and similar reduced shells will NOT work, because this script
# requires all of these POSIX shell features:
@@ -55,7 +57,7 @@
# Darwin, MinGW, and NonStop.
#
# (3) This script is generated from the Groovy template
# https://github.com/gradle/gradle/blob/HEAD/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
# https://github.com/gradle/gradle/blob/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/.
@@ -83,10 +85,8 @@ done
# This is normally unused
# shellcheck disable=SC2034
APP_BASE_NAME=${0##*/}
APP_HOME=$( cd "${APP_HOME:-./}" && pwd -P ) || exit
# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036)
APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit
# Use the maximum available, or set MAX_FD != -1 to use that value.
MAX_FD=maximum
@@ -114,7 +114,6 @@ case "$( uname )" in #(
NONSTOP* ) nonstop=true ;;
esac
CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
# Determine the Java command to use to start the JVM.
@@ -133,10 +132,13 @@ location of your Java installation."
fi
else
JAVACMD=java
which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
if ! command -v java >/dev/null 2>&1
then
die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
Please set the JAVA_HOME variable in your environment to match the
location of your Java installation."
fi
fi
# Increase the maximum file descriptors if we can.
@@ -144,7 +146,7 @@ if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then
case $MAX_FD in #(
max*)
# In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked.
# shellcheck disable=SC3045
# shellcheck disable=SC2039,SC3045
MAX_FD=$( ulimit -H -n ) ||
warn "Could not query maximum file descriptor limit"
esac
@@ -152,7 +154,7 @@ if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then
'' | soft) :;; #(
*)
# In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked.
# shellcheck disable=SC3045
# shellcheck disable=SC2039,SC3045
ulimit -n "$MAX_FD" ||
warn "Could not set maximum file descriptor limit to $MAX_FD"
esac
@@ -169,7 +171,6 @@ fi
# For Cygwin or MSYS, switch paths to Windows format before running java
if "$cygwin" || "$msys" ; then
APP_HOME=$( cygpath --path --mixed "$APP_HOME" )
CLASSPATH=$( cygpath --path --mixed "$CLASSPATH" )
JAVACMD=$( cygpath --unix "$JAVACMD" )
@@ -197,16 +198,19 @@ if "$cygwin" || "$msys" ; then
done
fi
# Collect all arguments for the java command;
# * $DEFAULT_JVM_OPTS, $JAVA_OPTS, and $GRADLE_OPTS can contain fragments of
# shell script including quotes and variable substitutions, so put them in
# double quotes to make sure that they get re-expanded; and
# * put everything else in single quotes, so that it's not re-expanded.
# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
# Collect all arguments for the java command:
# * DEFAULT_JVM_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments,
# and any embedded shellness will be escaped.
# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be
# treated as '${Hostname}' itself on the command line.
set -- \
"-Dorg.gradle.appname=$APP_BASE_NAME" \
-classpath "$CLASSPATH" \
org.gradle.wrapper.GradleWrapperMain \
-jar "$APP_HOME/gradle/wrapper/gradle-wrapper.jar" \
"$@"
# Stop when "xargs" is not available.
Vendored
+24 -34
View File
@@ -13,16 +13,18 @@
@rem See the License for the specific language governing permissions and
@rem limitations under the License.
@rem
@rem SPDX-License-Identifier: Apache-2.0
@rem
@if "%DEBUG%"=="" @echo off
@rem ##########################################################################
@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=.
@@ -43,13 +45,13 @@ set JAVA_EXE=java.exe
%JAVA_EXE% -version >NUL 2>&1
if %ERRORLEVEL% equ 0 goto execute
echo.
echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
echo.
echo Please set the JAVA_HOME variable in your environment to match the
echo location of your Java installation.
echo. 1>&2
echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2
echo. 1>&2
echo Please set the JAVA_HOME variable in your environment to match the 1>&2
echo location of your Java installation. 1>&2
goto fail
"%COMSPEC%" /c exit 1
:findJavaFromJavaHome
set JAVA_HOME=%JAVA_HOME:"=%
@@ -57,36 +59,24 @@ set JAVA_EXE=%JAVA_HOME%/bin/java.exe
if exist "%JAVA_EXE%" goto execute
echo.
echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
echo.
echo Please set the JAVA_HOME variable in your environment to match the
echo location of your Java installation.
echo. 1>&2
echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2
echo. 1>&2
echo Please set the JAVA_HOME variable in your environment to match the 1>&2
echo location of your Java installation. 1>&2
goto fail
"%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 %*
@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
:end
@rem End local scope for the variables with windows NT shell
if %ERRORLEVEL% equ 0 goto mainEnd
:fail
rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
rem the _cmd.exe /c_ return code!
set EXIT_CODE=%ERRORLEVEL%
if %EXIT_CODE% equ 0 set EXIT_CODE=1
if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE%
exit /b %EXIT_CODE%
: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

-16
View File
@@ -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'
}
}
+5 -10
View File
@@ -4,10 +4,10 @@ pluginManagement {
maven {
// RetroFuturaGradle
name "GTNH Maven"
url "http://jenkins.usrv.eu:8081/nexus/content/groups/public/"
allowInsecureProtocol = true
url "https://nexus.gtnewhorizons.com/repository/public/"
mavenContent {
includeGroup("com.gtnewhorizons.retrofuturagradle")
includeGroup("com.gtnewhorizons")
includeGroupByRegex("com\\.gtnewhorizons\\..+")
}
}
gradlePluginPortal()
@@ -17,12 +17,7 @@ pluginManagement {
}
plugins {
id 'com.diffplug.blowdryerSetup' version '1.6.0'
id 'org.gradle.toolchains.foojay-resolver-convention' version '0.4.0' // Provides java toolchains
id 'com.gtnewhorizons.gtnhsettingsconvention' version '2.0.31'
}
blowdryerSetup {
repoSubfolder 'gtnhShared'
github('GTNewHorizons/ExampleMod1.7.10', 'tag', '0.2.0')
//devLocal '.' // Use this when testing config updates locally
}
@@ -5,10 +5,11 @@
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.ModelBase;
import net.minecraft.client.model.ModelChicken;
import net.minecraft.client.model.ModelCow;
import net.minecraft.client.model.ModelHorse;
@@ -20,27 +21,17 @@ 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 net.minecraftforge.event.world.WorldEvent;
import thaumcraft.api.wands.IWandTriggerManager;
import thaumcraft.client.fx.ParticleEngine;
import thaumcraft.client.fx.particles.FXBurst;
import thaumcraft.client.fx.particles.FXSparkle;
import thaumcraft.client.fx.particles.FXWisp;
import thaumcraft.client.renderers.item.ItemWandRenderer;
import thaumcraft.common.Thaumcraft;
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;
@@ -174,9 +165,16 @@ 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 cpw.mods.fml.common.eventhandler.SubscribeEvent;
import thaumcraft.api.wands.IWandTriggerManager;
import thaumcraft.client.fx.ParticleEngine;
import thaumcraft.client.fx.particles.FXBurst;
import thaumcraft.client.fx.particles.FXSparkle;
import thaumcraft.client.fx.particles.FXWisp;
import thaumcraft.client.renderers.item.ItemWandRenderer;
import thaumcraft.common.Thaumcraft;
public class ClientProxy extends CommonProxy {
@@ -188,167 +186,74 @@ 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
@@ -356,31 +261,31 @@ public class ClientProxy extends CommonProxy {
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);
}
}
@@ -391,49 +296,46 @@ 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
@@ -456,7 +358,7 @@ 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);
}
}
}
@@ -468,7 +370,7 @@ 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);
}
}
}
@@ -490,7 +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);
}
}
}
@@ -506,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);
}
}
}
@@ -523,7 +425,7 @@ 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);
}
}
@@ -533,7 +435,7 @@ public class ClientProxy extends CommonProxy {
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;
@@ -566,7 +468,7 @@ 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
@@ -575,9 +477,9 @@ public class ClientProxy extends CommonProxy {
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,
@@ -587,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);
}
}
@@ -599,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
@@ -628,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,6 +4,7 @@
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;
@@ -26,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;
@@ -37,8 +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_,
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;
@@ -49,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() {
@@ -69,29 +69,29 @@ public class FXEssentiaBubble extends EntityFX {
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() {
@@ -15,9 +15,9 @@ 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;
@@ -71,29 +71,29 @@ public class FXEssentiaTrail extends EntityFX {
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() {
@@ -189,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;
}
@@ -32,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;
@@ -76,17 +69,17 @@ public class FXSonic extends EntityFX {
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");
@@ -94,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();
@@ -11,13 +11,15 @@ 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,9 +27,6 @@ import thaumcraft.client.lib.UtilsFX;
import thaumcraft.common.Thaumcraft;
import thaumcraft.common.config.Config;
import com.kentington.thaumichorizons.common.container.ContainerBloodInfuser;
import com.kentington.thaumichorizons.common.tiles.TileBloodInfuser;
public class GuiBloodInfuser extends GuiContainer {
TileBloodInfuser tile;
@@ -48,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;
@@ -77,13 +76,13 @@ public class GuiBloodInfuser extends GuiContainer {
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();
}
@@ -91,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()) {
@@ -151,13 +150,7 @@ 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,
@@ -173,12 +166,10 @@ public class GuiBloodInfuser extends GuiContainer {
} else {
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;
}
@@ -210,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,
@@ -243,7 +234,7 @@ public class GuiBloodInfuser extends GuiContainer {
--this.flashTimer;
this.drawFlash();
}
GL11.glDisable(3042);
GL11.glDisable(GL11.GL_BLEND);
GL11.glPopMatrix();
}
@@ -355,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;
@@ -365,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();
}
@@ -391,7 +382,7 @@ public class GuiBloodInfuser extends GuiContainer {
asp,
0.0f,
0,
(double) this.zLevel,
this.zLevel,
771,
1.0f,
false);
@@ -411,7 +402,7 @@ public class GuiBloodInfuser extends GuiContainer {
asp,
0.0f,
0,
(double) this.zLevel,
this.zLevel,
771,
1.0f,
this.tile.aspectsAcquired.getAmount(asp) < alreadyUsed.getAmount(asp));
@@ -428,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();
}
@@ -6,38 +6,36 @@ package com.kentington.thaumichorizons.client.gui;
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 thaumcraft.client.lib.UtilsFX;
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;
private final 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));
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;
}
@@ -53,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);
}
}
@@ -8,34 +8,31 @@ 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 thaumcraft.api.aspects.Aspect;
import thaumcraft.api.aspects.AspectList;
import thaumcraft.client.lib.UtilsFX;
import thaumcraft.common.items.wands.ItemWandCasting;
import thaumcraft.common.lib.crafting.ThaumcraftCraftingManager;
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;
import thaumcraft.common.items.wands.ItemWandCasting;
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));
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;
@@ -49,20 +46,19 @@ 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);
@@ -85,7 +81,7 @@ public class GuiFingers extends GuiContainer {
primal,
amt,
0,
(double) this.zLevel,
this.zLevel,
771,
alpha,
false);
@@ -101,24 +97,24 @@ public class GuiFingers extends GuiContainer {
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);
@@ -6,19 +6,18 @@ package com.kentington.thaumichorizons.client.gui;
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 thaumcraft.client.lib.UtilsFX;
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;
}
@@ -26,13 +25,13 @@ public class GuiInjector extends GuiContainer {
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();
}
}
@@ -6,31 +6,30 @@ package com.kentington.thaumichorizons.client.gui;
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 thaumcraft.client.lib.UtilsFX;
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_) {
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;
@@ -38,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();
}
}
@@ -6,31 +6,30 @@ package com.kentington.thaumichorizons.client.gui;
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 thaumcraft.client.lib.UtilsFX;
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_) {
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;
@@ -40,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();
}
}
@@ -6,18 +6,16 @@ package com.kentington.thaumichorizons.client.gui;
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 thaumcraft.client.lib.UtilsFX;
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 {
@@ -25,7 +23,7 @@ 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;
}
@@ -33,13 +31,13 @@ public class GuiSoulforge extends GuiContainer {
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();
}
@@ -7,25 +7,24 @@ package com.kentington.thaumichorizons.client.gui;
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 thaumcraft.client.lib.UtilsFX;
import thaumcraft.common.lib.research.ResearchManager;
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;
@@ -35,7 +34,7 @@ public class GuiVat extends GuiContainer {
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;
@@ -46,64 +45,36 @@ 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);
}
}
}
@@ -143,7 +114,7 @@ public class GuiVat extends GuiContainer {
16);
}
}
GL11.glDisable(3042);
GL11.glDisable(GL11.GL_BLEND);
GL11.glPopMatrix();
}
@@ -9,21 +9,19 @@ 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 thaumcraft.api.aspects.Aspect;
import thaumcraft.client.fx.ParticleEngine;
import thaumcraft.client.lib.UtilsFX;
import thaumcraft.common.config.Config;
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;
import thaumcraft.common.config.Config;
@SideOnly(Side.CLIENT)
public class GuiVisDynamo extends GuiContainer {
@@ -35,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;
@@ -45,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();
@@ -220,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;
@@ -230,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();
}
@@ -13,13 +13,11 @@ 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;
@@ -32,26 +30,26 @@ import net.minecraftforge.common.util.ForgeDirection;
import org.lwjgl.input.Mouse;
import org.lwjgl.opengl.Display;
import org.lwjgl.opengl.GL11;
import thaumcraft.api.nodes.IRevealer;
import thaumcraft.client.lib.UtilsFX;
import thaumcraft.common.Thaumcraft;
import baubles.api.BaublesApi;
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.common.network.simpleimpl.IMessage;
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 {
@@ -73,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;
@@ -86,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)
@@ -100,8 +98,7 @@ public class RenderEventHandler {
if (LensManager.nightVisionOffTime > 0L
&& (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;
}
@@ -136,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) {
@@ -197,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) {
@@ -250,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);
@@ -266,9 +262,9 @@ 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,
@@ -277,15 +273,15 @@ public class RenderEventHandler {
200,
771,
0.5f);
GL11.glDisable(3042);
GL11.glAlphaFunc(516, 0.1f);
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,
@@ -294,18 +290,18 @@ public class RenderEventHandler {
200,
771,
0.5f);
GL11.glDisable(3042);
GL11.glAlphaFunc(516, 0.1f);
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);
@@ -314,29 +310,26 @@ public class RenderEventHandler {
}
}
GL11.glScaled(
(double) RenderEventHandler.radialHudScale,
(double) RenderEventHandler.radialHudScale,
(double) RenderEventHandler.radialHudScale);
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);
@@ -347,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 {
@@ -363,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();
}
@@ -388,7 +380,7 @@ public class RenderEventHandler {
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) {
@@ -397,16 +389,16 @@ public class RenderEventHandler {
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);
}
}
@@ -416,7 +408,8 @@ public class RenderEventHandler {
.getPlayerRelativeBlockHardness(p, p.worldObj, this.cacheX, this.cacheY, this.cacheZ);
if (this.breakProgress > 1.0f) {
Minecraft.getMinecraft().getNetHandler().addToSendQueue(
(Packet) new C07PacketPlayerDigging(2, p.getEntityId(), this.cacheX, this.cacheY, this.cacheZ));
new C07PacketPlayerDigging(2, p.getEntityId(), this.cacheX, this.cacheY, this.cacheZ));
// 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;
@@ -561,7 +554,7 @@ public class RenderEventHandler {
&& !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);
}
}
}
@@ -570,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(
@@ -584,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;
}
}
@@ -603,7 +596,7 @@ public class RenderEventHandler {
event.setCanceled(true);
}
}
if (event.overlayType == RenderBlockOverlayEvent.OverlayType.FIRE && mc.thePlayer.ridingEntity != null
if (event.overlayType == RenderBlockOverlayEvent.OverlayType.FIRE
&& mc.thePlayer.ridingEntity instanceof EntityBoatThaumium) {
event.setCanceled(true);
}
@@ -7,16 +7,16 @@ package com.kentington.thaumichorizons.client.renderer.block;
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 thaumcraft.client.renderers.block.BlockRenderer;
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 {
@@ -27,8 +27,8 @@ public class BlockBloodInfuserRender extends BlockRenderer implements ISimpleBlo
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();
}
@@ -7,16 +7,16 @@ package com.kentington.thaumichorizons.client.renderer.block;
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 thaumcraft.client.renderers.block.BlockRenderer;
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 {
@@ -27,8 +27,8 @@ public class BlockEssentiaDynamoRender extends BlockRenderer implements ISimpleB
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();
}
@@ -7,16 +7,16 @@ package com.kentington.thaumichorizons.client.renderer.block;
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 thaumcraft.client.renderers.block.BlockRenderer;
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 {
@@ -27,8 +27,8 @@ public class BlockInspiratronRender extends BlockRenderer implements ISimpleBloc
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();
}
@@ -13,19 +13,19 @@ import net.minecraft.world.IBlockAccess;
import org.lwjgl.opengl.GL11;
import thaumcraft.client.renderers.block.BlockRenderer;
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) {
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;
@@ -7,16 +7,16 @@ package com.kentington.thaumichorizons.client.renderer.block;
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 thaumcraft.client.renderers.block.BlockRenderer;
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 {
@@ -27,8 +27,8 @@ public class BlockNodeMonitorRender extends BlockRenderer implements ISimpleBloc
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();
}
@@ -7,16 +7,16 @@ package com.kentington.thaumichorizons.client.renderer.block;
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 thaumcraft.client.renderers.block.BlockRenderer;
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 {
@@ -28,8 +28,8 @@ public class BlockRecombinatorRender extends BlockRenderer implements ISimpleBlo
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();
}
@@ -7,16 +7,16 @@ package com.kentington.thaumichorizons.client.renderer.block;
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 thaumcraft.client.renderers.block.BlockRenderer;
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 {
@@ -28,8 +28,8 @@ public class BlockSlotRender extends BlockRenderer implements ISimpleBlockRender
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();
}
@@ -7,16 +7,16 @@ package com.kentington.thaumichorizons.client.renderer.block;
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 thaumcraft.client.renderers.block.BlockRenderer;
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 {
@@ -27,8 +27,8 @@ public class BlockSoulBeaconRender extends BlockRenderer implements ISimpleBlock
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();
}
@@ -7,16 +7,16 @@ package com.kentington.thaumichorizons.client.renderer.block;
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 thaumcraft.client.renderers.block.BlockRenderer;
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 {
@@ -27,8 +27,8 @@ public class BlockSoulSieveRender extends BlockRenderer implements ISimpleBlockR
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();
}
@@ -7,16 +7,16 @@ package com.kentington.thaumichorizons.client.renderer.block;
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 thaumcraft.client.renderers.block.BlockRenderer;
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 {
@@ -27,8 +27,8 @@ public class BlockSoulforgeRender extends BlockRenderer implements ISimpleBlockR
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();
}
@@ -7,16 +7,16 @@ package com.kentington.thaumichorizons.client.renderer.block;
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 thaumcraft.client.renderers.block.BlockRenderer;
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 {
@@ -25,18 +25,16 @@ public class BlockSpikeRenderer extends BlockRenderer implements ISimpleBlockRen
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();
}
@@ -7,16 +7,16 @@ package com.kentington.thaumichorizons.client.renderer.block;
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 thaumcraft.client.renderers.block.BlockRenderer;
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 {
@@ -27,8 +27,8 @@ public class BlockSyntheticNodeRender extends BlockRenderer implements ISimpleBl
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();
}
@@ -7,16 +7,16 @@ package com.kentington.thaumichorizons.client.renderer.block;
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 thaumcraft.client.renderers.block.BlockRenderer;
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 {
@@ -27,8 +27,8 @@ public class BlockTransductionAmplifierRender extends BlockRenderer implements I
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();
}
@@ -8,10 +8,10 @@ import net.minecraft.block.Block;
import net.minecraft.client.renderer.RenderBlocks;
import net.minecraft.world.IBlockAccess;
import thaumcraft.client.renderers.block.BlockRenderer;
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 {
@@ -7,16 +7,16 @@ package com.kentington.thaumichorizons.client.renderer.block;
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 thaumcraft.client.renderers.block.BlockRenderer;
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 {
@@ -27,8 +27,8 @@ public class BlockVatMatrixRender extends BlockRenderer implements ISimpleBlockR
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();
}
@@ -14,6 +14,7 @@ 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;
public class BlockVatRender implements ISimpleBlockRenderingHandler {
@@ -23,14 +24,14 @@ public class BlockVatRender implements ISimpleBlockRenderingHandler {
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);
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;
@@ -38,198 +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);
}
@@ -238,198 +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);
}
@@ -13,6 +13,7 @@ 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;
public class BlockVatSolidRender implements ISimpleBlockRenderingHandler {
@@ -22,117 +23,92 @@ public class BlockVatSolidRender implements ISimpleBlockRenderingHandler {
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);
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);
}
}
@@ -141,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);
}
}
@@ -207,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);
}
}
@@ -328,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;
@@ -7,16 +7,16 @@ package com.kentington.thaumichorizons.client.renderer.block;
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 thaumcraft.client.renderers.block.BlockRenderer;
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 {
@@ -27,8 +27,8 @@ public class BlockVisDynamoRender extends BlockRenderer implements ISimpleBlockR
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();
}
@@ -7,16 +7,16 @@ package com.kentington.thaumichorizons.client.renderer.block;
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 thaumcraft.client.renderers.block.BlockRenderer;
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 {
@@ -27,8 +27,8 @@ public class BlockVortexStabilizerRender extends BlockRenderer implements ISimpl
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();
}
@@ -15,6 +15,7 @@ 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;
@@ -33,7 +34,7 @@ public class BlastPhialRender extends RenderSnowball {
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;
@@ -46,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();
}
}
@@ -63,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();
}
@@ -15,7 +15,7 @@ public class ModelAlchemite extends ModelBase {
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;
@@ -17,7 +17,7 @@ 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();
@@ -50,19 +50,19 @@ 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();
}
@@ -31,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;
}
}
@@ -12,10 +12,10 @@ import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.passive.EntityOcelot;
import net.minecraft.util.ResourceLocation;
import thaumcraft.common.Thaumcraft;
import com.kentington.thaumichorizons.common.entities.EntityFamiliar;
import thaumcraft.common.Thaumcraft;
public class RenderFamiliar extends RenderOcelot {
ResourceLocation rl;
@@ -31,7 +31,7 @@ public class RenderFamiliar extends RenderOcelot {
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_);
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(
@@ -12,10 +12,10 @@ import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.passive.EntityChicken;
import net.minecraft.util.ResourceLocation;
import thaumcraft.common.Thaumcraft;
import com.kentington.thaumichorizons.common.entities.EntityGoldChicken;
import thaumcraft.common.Thaumcraft;
public class RenderGoldChicken extends RenderChicken {
ResourceLocation rl;
@@ -31,7 +31,7 @@ public class RenderGoldChicken extends RenderChicken {
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_);
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(
@@ -17,14 +17,14 @@ 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;
import com.kentington.thaumichorizons.client.renderer.model.ModelGolemTH;
import com.kentington.thaumichorizons.common.entities.EntityGolemTH;
public class RenderGolemTH extends RenderGolemBase {
ResourceLocation voidGolem;
@@ -34,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) {
@@ -57,7 +56,7 @@ public class RenderGolemTH extends RenderGolemBase {
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,
@@ -80,8 +79,7 @@ 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();
@@ -94,8 +92,8 @@ public class RenderGolemTH extends RenderGolemBase {
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);
@@ -103,7 +101,7 @@ public class RenderGolemTH extends RenderGolemBase {
GL11.glScaled(0.1, 0.1, 0.1);
final Tessellator tessellator2 = Tessellator.instance;
final IIcon icon2 = ConfigItems.itemGolemUpgrade
.getIconFromDamage((int) ((EntityGolemTH) entity).getUpgrade(a));
.getIconFromDamage(((EntityGolemTH) entity).getUpgrade(a));
final float f5 = icon2.getMaxU();
final float f6 = icon2.getMinV();
final float f7 = icon2.getMinU();
@@ -111,14 +109,14 @@ 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
@@ -22,10 +22,10 @@ public class RenderLightningBoltFinite extends RenderLightningBolt {
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;
@@ -63,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;
@@ -102,8 +102,8 @@ public class RenderLightningBoltFinite extends RenderLightningBolt {
}
}
}
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);
}
}
@@ -14,11 +14,11 @@ 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;
import com.kentington.thaumichorizons.common.entities.EntityLunarWolf;
public class RenderLunarWolf extends RenderWolf {
ResourceLocation wolfTex;
@@ -30,18 +30,18 @@ public class RenderLunarWolf extends RenderWolf {
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_);
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(
@@ -56,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();
}
@@ -31,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;
}
}
@@ -44,40 +44,20 @@ 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();
}
@@ -15,7 +15,7 @@ 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;
@@ -28,13 +28,12 @@ public class RenderSyringe extends Render {
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;
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();
}
@@ -15,11 +15,11 @@ 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;
import com.kentington.thaumichorizons.common.entities.EntityTaintPig;
public class RenderTaintfeeder extends RenderPig {
private static final ResourceLocation pigTextures;
@@ -35,14 +35,14 @@ public class RenderTaintfeeder extends RenderPig {
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_);
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(
@@ -57,11 +57,11 @@ 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();
}
@@ -90,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;
}
@@ -16,6 +16,8 @@ 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;
@@ -23,8 +25,6 @@ import thaumcraft.api.nodes.NodeType;
import thaumcraft.client.lib.UtilsFX;
import thaumcraft.client.renderers.tile.TileNodeRenderer;
import com.kentington.thaumichorizons.common.entities.EntityWizardCow;
public class RenderWizardCow extends RenderCow {
public static HashMap<String, AspectList> cowAspects;
@@ -37,10 +37,10 @@ public class RenderWizardCow extends RenderCow {
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);
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,7 +57,7 @@ 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,
@@ -74,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;
@@ -111,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;
@@ -129,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) {
@@ -138,68 +135,62 @@ 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();
}
}
@@ -220,8 +211,8 @@ public class RenderWizardCow extends RenderCow {
}
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,6 @@ 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;
@@ -18,8 +17,8 @@ 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();
@@ -52,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();
}
}
@@ -7,21 +7,20 @@ package com.kentington.thaumichorizons.client.renderer.item;
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 thaumcraft.client.lib.UtilsFX;
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();
@@ -79,9 +78,9 @@ 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,
null,
f * (float) Math.PI / 16.0f,
f * (float) Math.PI / 4.0f,
(float) rotation,
f,
0.0f,
@@ -12,18 +12,18 @@ import net.minecraftforge.client.IItemRenderer;
import org.lwjgl.opengl.GL11;
import thaumcraft.client.lib.UtilsFX;
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();
@@ -58,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();
}
}
@@ -24,52 +24,52 @@ 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;
@@ -35,82 +35,82 @@ 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;
@@ -146,40 +146,44 @@ public class ModelFamiliar 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.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;
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
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 + 3.1415927f) * 1.0f * p_78087_2_;
this.Tail2.rotateAngleX = 1.7278761f + 0.31415927f * MathHelper.cos(p_78087_1_) * 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_;
}
@@ -262,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;
@@ -341,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;
@@ -19,27 +19,27 @@ 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;
@@ -28,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;
@@ -38,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);
}
}
@@ -35,25 +35,25 @@ 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);
}
@@ -92,27 +92,30 @@ 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;
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
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 + 3.1415927f) * 1.0f
this.ocelotFrontRightLeg.rotateAngleX = MathHelper.cos(p_78087_1_ * 0.6662f + (float) Math.PI) * 1.0f
* p_78087_2_;
this.ocelotTail2.rotateAngleX = 1.7278761f + 0.31415927f * MathHelper.cos(p_78087_1_) * 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
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 + 3.1415927f) * 1.0f
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_;
}
@@ -163,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;
@@ -210,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;
@@ -26,46 +26,46 @@ public class ModelInjector extends ModelBase {
public ModelInjector() {
this.textureWidth = 64;
this.textureHeight = 32;
(this.Drum = new ModelRenderer((ModelBase) this, 0, 0)).addBox(-2.5f, -2.5f, 0.0f, 5, 5, 1);
(this.Drum = new ModelRenderer(this, 0, 0)).addBox(-2.5f, -2.5f, 0.0f, 5, 5, 1);
this.Drum.setRotationPoint(2.5f, 2.25f, 0.0f);
this.Drum.setTextureSize(64, 32);
this.Drum.mirror = true;
this.setRotation(this.Drum, 0.0f, 0.0f, 0.0f);
(this.Front = new ModelRenderer((ModelBase) this, 12, 0)).addBox(0.0f, 0.0f, 0.0f, 3, 1, 8);
(this.Front = new ModelRenderer(this, 12, 0)).addBox(0.0f, 0.0f, 0.0f, 3, 1, 8);
this.Front.setRotationPoint(1.0f, 1.0f, -8.0f);
this.Front.setTextureSize(64, 32);
this.Front.mirror = true;
this.setRotation(this.Front, 0.0f, 0.0f, 0.0f);
(this.BowL1 = new ModelRenderer((ModelBase) this, 0, 6)).addBox(0.0f, -1.0f, 0.0f, 4, 1, 1);
(this.BowL1 = new ModelRenderer(this, 0, 6)).addBox(0.0f, -1.0f, 0.0f, 4, 1, 1);
this.BowL1.setRotationPoint(2.5f, 1.0f, -8.0f);
this.BowL1.setTextureSize(64, 32);
this.BowL1.mirror = true;
this.setRotation(this.BowL1, 0.0f, 0.0f, 0.0f);
(this.BowR1 = new ModelRenderer((ModelBase) this, 0, 6)).addBox(0.0f, -1.0f, -1.0f, 4, 1, 1);
(this.BowR1 = new ModelRenderer(this, 0, 6)).addBox(0.0f, -1.0f, -1.0f, 4, 1, 1);
this.BowR1.setRotationPoint(2.5f, 1.0f, -8.0f);
this.BowR1.setTextureSize(64, 32);
this.BowR1.mirror = true;
this.setRotation(this.BowR1, 0.0f, 3.141593f, 0.0f);
(this.BowL2 = new ModelRenderer((ModelBase) this, 0, 8)).addBox(0.0f, -1.0f, 0.0f, 3, 1, 1);
this.setRotation(this.BowR1, 0.0f, (float) Math.PI, 0.0f);
(this.BowL2 = new ModelRenderer(this, 0, 8)).addBox(0.0f, -1.0f, 0.0f, 3, 1, 1);
this.BowL2.setRotationPoint(6.0f, 1.0f, -7.5f);
this.BowL2.setTextureSize(64, 32);
this.BowL2.mirror = true;
this.setRotation(this.BowL2, 0.0f, -0.3490659f, 0.0f);
(this.BowR2 = new ModelRenderer((ModelBase) this, 0, 8)).addBox(0.0f, -1.0f, -1.0f, 3, 1, 1);
(this.BowR2 = new ModelRenderer(this, 0, 8)).addBox(0.0f, -1.0f, -1.0f, 3, 1, 1);
this.BowR2.setRotationPoint(-1.0f, 1.0f, -7.5f);
this.BowR2.setTextureSize(64, 32);
this.BowR2.mirror = true;
this.setRotation(this.BowR2, 0.0f, 3.490659f, 0.0f);
(this.Thingy = new ModelRenderer((ModelBase) this, 13, 0)).addBox(-0.5f, 0.0f, 0.5f, 1, 1, 1);
(this.Thingy = new ModelRenderer(this, 13, 0)).addBox(-0.5f, 0.0f, 0.5f, 1, 1, 1);
this.Thingy.setRotationPoint((this.BowR2.rotationPointX + this.BowL2.rotationPointX) / 2.0f, 0.0f, -6.5f);
this.Thingy.setTextureSize(64, 32);
this.Thingy.mirror = true;
(this.Stock = new ModelRenderer((ModelBase) this, 0, 10)).addBox(0.0f, 0.0f, 0.0f, 3, 1, 3);
(this.Stock = new ModelRenderer(this, 0, 10)).addBox(0.0f, 0.0f, 0.0f, 3, 1, 3);
this.Stock.setRotationPoint(1.0f, 1.0f, 1.0f);
this.Stock.setTextureSize(64, 32);
this.Stock.mirror = true;
this.setRotation(this.Stock, 0.0f, 0.0f, 0.0f);
(this.Grip = new ModelRenderer((ModelBase) this, 0, 14)).addBox(0.0f, 0.0f, 0.0f, 3, 2, 1);
(this.Grip = new ModelRenderer(this, 0, 14)).addBox(0.0f, 0.0f, 0.0f, 3, 2, 1);
this.Grip.setRotationPoint(1.0f, 2.0f, 3.0f);
this.Grip.setTextureSize(64, 32);
this.Grip.mirror = true;
@@ -84,8 +84,8 @@ public class ModelInjector extends ModelBase {
this.BowR2.render(f5);
this.Stock.render(f5);
this.Grip.render(f5);
GL11.glDisable(3553);
GL11.glDisable(2896);
GL11.glDisable(GL11.GL_TEXTURE_2D);
GL11.glDisable(GL11.GL_LIGHTING);
final Tessellator tessellator = Tessellator.instance;
tessellator.startDrawing(3);
tessellator.setColorOpaque_I(0);
@@ -102,8 +102,8 @@ public class ModelInjector extends ModelBase {
this.BowL2.rotationPointY - 0.9375,
this.BowL2.rotationPointZ + 6.8125 + f3 * 0.125);
tessellator.draw();
GL11.glEnable(2896);
GL11.glEnable(3553);
GL11.glEnable(GL11.GL_LIGHTING);
GL11.glEnable(GL11.GL_TEXTURE_2D);
this.Thingy.setRotationPoint(
(this.BowR2.rotationPointX + this.BowL2.rotationPointX) / 2.0f,
0.0f,
@@ -121,9 +121,9 @@ public class ModelInjector extends ModelBase {
final float f5, final Entity ent) {
super.setRotationAngles(f, f1, f2, f3, f4, f5, ent);
this.BowL1.rotateAngleY = -f;
this.BowR1.rotateAngleY = f + 3.1415927f;
this.BowR1.rotateAngleY = f + (float) Math.PI;
this.BowL2.rotateAngleY = -0.34906238f - f1;
this.BowR2.rotateAngleY = 3.490655f + f1;
this.Drum.rotateAngleZ = f2 * 2.0f * 3.1415927f / 180.0f;
this.Drum.rotateAngleZ = f2 * 2.0f * (float) Math.PI / 180.0f;
}
}
@@ -18,22 +18,22 @@ public class ModelInspiratron extends ModelBase {
public ModelInspiratron() {
this.textureWidth = 64;
this.textureHeight = 64;
(this.Jar = new ModelRenderer((ModelBase) this, 0, 0)).addBox(0.0f, 0.0f, 0.0f, 10, 14, 10);
(this.Jar = new ModelRenderer(this, 0, 0)).addBox(0.0f, 0.0f, 0.0f, 10, 14, 10);
this.Jar.setRotationPoint(-5.0f, 11.0f, -5.0f);
this.Jar.setTextureSize(64, 64);
this.Jar.mirror = true;
this.setRotation(this.Jar, 0.0f, 0.0f, 0.0f);
(this.BottomA = new ModelRenderer((ModelBase) this, 0, 39)).addBox(0.0f, 0.0f, 0.0f, 16, 1, 16);
(this.BottomA = new ModelRenderer(this, 0, 39)).addBox(0.0f, 0.0f, 0.0f, 16, 1, 16);
this.BottomA.setRotationPoint(-8.0f, 23.0f, -8.0f);
this.BottomA.setTextureSize(64, 64);
this.BottomA.mirror = true;
this.setRotation(this.BottomA, 0.0f, 0.0f, 0.0f);
(this.Bottom1B = new ModelRenderer((ModelBase) this, 0, 24)).addBox(0.0f, 0.0f, 0.0f, 12, 3, 12);
(this.Bottom1B = new ModelRenderer(this, 0, 24)).addBox(0.0f, 0.0f, 0.0f, 12, 3, 12);
this.Bottom1B.setRotationPoint(-6.0f, 20.0f, -6.0f);
this.Bottom1B.setTextureSize(64, 64);
this.Bottom1B.mirror = true;
this.setRotation(this.Bottom1B, 0.0f, 0.0f, 0.0f);
(this.Top = new ModelRenderer((ModelBase) this, 0, 24)).addBox(0.0f, 0.0f, 0.0f, 12, 1, 12);
(this.Top = new ModelRenderer(this, 0, 24)).addBox(0.0f, 0.0f, 0.0f, 12, 1, 12);
this.Top.setRotationPoint(-6.0f, 10.0f, -6.0f);
this.Top.setTextureSize(64, 64);
this.Top.mirror = true;
@@ -12,7 +12,7 @@ public class ModelQuarterBlock extends ModelBase {
public ModelRenderer block;
public ModelQuarterBlock() {
(this.block = new ModelRenderer((ModelBase) this, 0, 0)).addBox(0.0f, 0.0f, 0.0f, 16, 1, 16);
(this.block = new ModelRenderer(this, 0, 0)).addBox(0.0f, 0.0f, 0.0f, 16, 1, 16);
this.block.setRotationPoint(0.0f, 0.0f, 0.0f);
this.block.setTextureSize(64, 32);
this.block.mirror = true;
@@ -41,107 +41,107 @@ public class ModelReceptacle extends ModelBase {
public ModelReceptacle() {
this.textureWidth = 64;
this.textureHeight = 64;
(this.Corner1 = new ModelRenderer((ModelBase) this, 0, 0)).addBox(0.0f, 0.0f, 0.0f, 4, 4, 4);
(this.Corner1 = new ModelRenderer(this, 0, 0)).addBox(0.0f, 0.0f, 0.0f, 4, 4, 4);
this.Corner1.setRotationPoint(-8.0f, 20.0f, 4.0f);
this.Corner1.setTextureSize(64, 64);
this.Corner1.mirror = true;
this.setRotation(this.Corner1, 0.0f, 0.0f, 0.0f);
(this.Corner2 = new ModelRenderer((ModelBase) this, 0, 0)).addBox(0.0f, 0.0f, 0.0f, 4, 4, 4);
(this.Corner2 = new ModelRenderer(this, 0, 0)).addBox(0.0f, 0.0f, 0.0f, 4, 4, 4);
this.Corner2.setRotationPoint(-8.0f, 20.0f, -8.0f);
this.Corner2.setTextureSize(64, 64);
this.Corner2.mirror = true;
this.setRotation(this.Corner2, 0.0f, 0.0f, 0.0f);
(this.Corner3 = new ModelRenderer((ModelBase) this, 0, 0)).addBox(0.0f, 0.0f, 0.0f, 4, 4, 4);
(this.Corner3 = new ModelRenderer(this, 0, 0)).addBox(0.0f, 0.0f, 0.0f, 4, 4, 4);
this.Corner3.setRotationPoint(4.0f, 20.0f, -8.0f);
this.Corner3.setTextureSize(64, 64);
this.Corner3.mirror = true;
this.setRotation(this.Corner3, 0.0f, 0.0f, 0.0f);
(this.Corner4 = new ModelRenderer((ModelBase) this, 0, 0)).addBox(0.0f, 0.0f, 0.0f, 4, 4, 4);
(this.Corner4 = new ModelRenderer(this, 0, 0)).addBox(0.0f, 0.0f, 0.0f, 4, 4, 4);
this.Corner4.setRotationPoint(4.0f, 20.0f, 4.0f);
this.Corner4.setTextureSize(64, 64);
this.Corner4.mirror = true;
this.setRotation(this.Corner4, 0.0f, 0.0f, 0.0f);
(this.Side1A = new ModelRenderer((ModelBase) this, 0, 8)).addBox(0.0f, 0.0f, 0.0f, 8, 4, 4);
(this.Side1A = new ModelRenderer(this, 0, 8)).addBox(0.0f, 0.0f, 0.0f, 8, 4, 4);
this.Side1A.setRotationPoint(-4.0f, 8.0f, 4.0f);
this.Side1A.setTextureSize(64, 64);
this.Side1A.mirror = true;
this.setRotation(this.Side1A, 0.0f, 0.0f, 0.0f);
(this.Corner5 = new ModelRenderer((ModelBase) this, 0, 0)).addBox(0.0f, 0.0f, 0.0f, 4, 4, 4);
(this.Corner5 = new ModelRenderer(this, 0, 0)).addBox(0.0f, 0.0f, 0.0f, 4, 4, 4);
this.Corner5.setRotationPoint(-8.0f, 8.0f, 4.0f);
this.Corner5.setTextureSize(64, 64);
this.Corner5.mirror = true;
this.setRotation(this.Corner5, 0.0f, 0.0f, 0.0f);
(this.Corner6 = new ModelRenderer((ModelBase) this, 0, 0)).addBox(0.0f, 0.0f, 0.0f, 4, 4, 4);
(this.Corner6 = new ModelRenderer(this, 0, 0)).addBox(0.0f, 0.0f, 0.0f, 4, 4, 4);
this.Corner6.setRotationPoint(-8.0f, 8.0f, -8.0f);
this.Corner6.setTextureSize(64, 64);
this.Corner6.mirror = true;
this.setRotation(this.Corner6, 0.0f, 0.0f, 0.0f);
(this.Corner7 = new ModelRenderer((ModelBase) this, 0, 0)).addBox(0.0f, 0.0f, 0.0f, 4, 4, 4);
(this.Corner7 = new ModelRenderer(this, 0, 0)).addBox(0.0f, 0.0f, 0.0f, 4, 4, 4);
this.Corner7.setRotationPoint(4.0f, 8.0f, -8.0f);
this.Corner7.setTextureSize(64, 64);
this.Corner7.mirror = true;
this.setRotation(this.Corner7, 0.0f, 0.0f, 0.0f);
(this.Corner8 = new ModelRenderer((ModelBase) this, 0, 0)).addBox(0.0f, 0.0f, 0.0f, 4, 4, 4);
(this.Corner8 = new ModelRenderer(this, 0, 0)).addBox(0.0f, 0.0f, 0.0f, 4, 4, 4);
this.Corner8.setRotationPoint(4.0f, 8.0f, 4.0f);
this.Corner8.setTextureSize(64, 64);
this.Corner8.mirror = true;
this.setRotation(this.Corner8, 0.0f, 0.0f, 0.0f);
(this.Side1B = new ModelRenderer((ModelBase) this, 0, 8)).addBox(0.0f, 0.0f, 0.0f, 8, 4, 4);
(this.Side1B = new ModelRenderer(this, 0, 8)).addBox(0.0f, 0.0f, 0.0f, 8, 4, 4);
this.Side1B.setRotationPoint(-4.0f, 8.0f, -8.0f);
this.Side1B.setTextureSize(64, 64);
this.Side1B.mirror = true;
this.setRotation(this.Side1B, 0.0f, 0.0f, 0.0f);
(this.Side1C = new ModelRenderer((ModelBase) this, 0, 8)).addBox(0.0f, 0.0f, 0.0f, 8, 4, 4);
(this.Side1C = new ModelRenderer(this, 0, 8)).addBox(0.0f, 0.0f, 0.0f, 8, 4, 4);
this.Side1C.setRotationPoint(-4.0f, 20.0f, -8.0f);
this.Side1C.setTextureSize(64, 64);
this.Side1C.mirror = true;
this.setRotation(this.Side1C, 0.0f, 0.0f, 0.0f);
(this.Side1D = new ModelRenderer((ModelBase) this, 0, 8)).addBox(0.0f, 0.0f, 0.0f, 8, 4, 4);
(this.Side1D = new ModelRenderer(this, 0, 8)).addBox(0.0f, 0.0f, 0.0f, 8, 4, 4);
this.Side1D.setRotationPoint(-4.0f, 20.0f, 4.0f);
this.Side1D.setTextureSize(64, 64);
this.Side1D.mirror = true;
this.setRotation(this.Side1D, 0.0f, 0.0f, 0.0f);
(this.Side2A = new ModelRenderer((ModelBase) this, 0, 16)).addBox(0.0f, 0.0f, 0.0f, 4, 8, 4);
(this.Side2A = new ModelRenderer(this, 0, 16)).addBox(0.0f, 0.0f, 0.0f, 4, 8, 4);
this.Side2A.setRotationPoint(-8.0f, 12.0f, -8.0f);
this.Side2A.setTextureSize(64, 64);
this.Side2A.mirror = true;
this.setRotation(this.Side2A, 0.0f, 0.0f, 0.0f);
(this.Side2B = new ModelRenderer((ModelBase) this, 0, 16)).addBox(0.0f, 0.0f, 0.0f, 4, 8, 4);
(this.Side2B = new ModelRenderer(this, 0, 16)).addBox(0.0f, 0.0f, 0.0f, 4, 8, 4);
this.Side2B.setRotationPoint(4.0f, 12.0f, 4.0f);
this.Side2B.setTextureSize(64, 64);
this.Side2B.mirror = true;
this.setRotation(this.Side2B, 0.0f, 0.0f, 0.0f);
(this.Side2C = new ModelRenderer((ModelBase) this, 0, 16)).addBox(0.0f, 0.0f, 0.0f, 4, 8, 4);
(this.Side2C = new ModelRenderer(this, 0, 16)).addBox(0.0f, 0.0f, 0.0f, 4, 8, 4);
this.Side2C.setRotationPoint(-8.0f, 12.0f, 4.0f);
this.Side2C.setTextureSize(64, 64);
this.Side2C.mirror = true;
this.setRotation(this.Side2C, 0.0f, 0.0f, 0.0f);
(this.Side2D = new ModelRenderer((ModelBase) this, 0, 16)).addBox(0.0f, 0.0f, 0.0f, 4, 8, 4);
(this.Side2D = new ModelRenderer(this, 0, 16)).addBox(0.0f, 0.0f, 0.0f, 4, 8, 4);
this.Side2D.setRotationPoint(4.0f, 12.0f, -8.0f);
this.Side2D.setTextureSize(64, 64);
this.Side2D.mirror = true;
this.setRotation(this.Side2D, 0.0f, 0.0f, 0.0f);
(this.Side3A = new ModelRenderer((ModelBase) this, 0, 28)).addBox(0.0f, 0.0f, 0.0f, 4, 4, 8);
(this.Side3A = new ModelRenderer(this, 0, 28)).addBox(0.0f, 0.0f, 0.0f, 4, 4, 8);
this.Side3A.setRotationPoint(-8.0f, 8.0f, -4.0f);
this.Side3A.setTextureSize(64, 64);
this.Side3A.mirror = true;
this.setRotation(this.Side3A, 0.0f, 0.0f, 0.0f);
(this.Side3B = new ModelRenderer((ModelBase) this, 0, 28)).addBox(0.0f, 0.0f, 0.0f, 4, 4, 8);
(this.Side3B = new ModelRenderer(this, 0, 28)).addBox(0.0f, 0.0f, 0.0f, 4, 4, 8);
this.Side3B.setRotationPoint(4.0f, 8.0f, -4.0f);
this.Side3B.setTextureSize(64, 64);
this.Side3B.mirror = true;
this.setRotation(this.Side3B, 0.0f, 0.0f, 0.0f);
(this.Side3C = new ModelRenderer((ModelBase) this, 0, 28)).addBox(0.0f, 0.0f, 0.0f, 4, 4, 8);
(this.Side3C = new ModelRenderer(this, 0, 28)).addBox(0.0f, 0.0f, 0.0f, 4, 4, 8);
this.Side3C.setRotationPoint(-8.0f, 20.0f, -4.0f);
this.Side3C.setTextureSize(64, 64);
this.Side3C.mirror = true;
this.setRotation(this.Side3C, 0.0f, 0.0f, 0.0f);
(this.Side3D = new ModelRenderer((ModelBase) this, 0, 28)).addBox(0.0f, 0.0f, 0.0f, 4, 4, 8);
(this.Side3D = new ModelRenderer(this, 0, 28)).addBox(0.0f, 0.0f, 0.0f, 4, 4, 8);
this.Side3D.setRotationPoint(4.0f, 20.0f, -4.0f);
this.Side3D.setTextureSize(64, 64);
this.Side3D.mirror = true;
this.setRotation(this.Side3D, 0.0f, 0.0f, 0.0f);
(this.Keystone = new ModelRenderer((ModelBase) this, 24, 0)).addBox(0.0f, 0.0f, 0.0f, 8, 8, 8);
(this.Keystone = new ModelRenderer(this, 24, 0)).addBox(0.0f, 0.0f, 0.0f, 8, 8, 8);
this.Keystone.setRotationPoint(-4.0f, 12.0f, -4.0f);
this.Keystone.setTextureSize(64, 64);
this.Keystone.mirror = true;
@@ -194,6 +194,6 @@ public class ModelReceptacle extends ModelBase {
public void setRotationAngles(final float f, final float f1, final float f2, final float f3, final float f4,
final float f5) {
super.setRotationAngles(f, f1, f2, f3, f4, f5, (Entity) null);
super.setRotationAngles(f, f1, f2, f3, f4, f5, null);
}
}
@@ -26,62 +26,62 @@ public class ModelRecombinator extends ModelBase {
public ModelRecombinator() {
this.textureWidth = 64;
this.textureHeight = 64;
(this.Base = new ModelRenderer((ModelBase) this, 0, 0)).addBox(0.0f, 0.0f, 0.0f, 16, 4, 16);
(this.Base = new ModelRenderer(this, 0, 0)).addBox(0.0f, 0.0f, 0.0f, 16, 4, 16);
this.Base.setRotationPoint(-8.0f, 20.0f, -8.0f);
this.Base.setTextureSize(64, 64);
this.Base.mirror = true;
this.setRotation(this.Base, 0.0f, 0.0f, 0.0f);
(this.Pearl = new ModelRenderer((ModelBase) this, 0, 20)).addBox(0.0f, 0.0f, 0.0f, 4, 4, 4);
(this.Pearl = new ModelRenderer(this, 0, 20)).addBox(0.0f, 0.0f, 0.0f, 4, 4, 4);
this.Pearl.setRotationPoint(-2.0f, 14.0f, -2.0f);
this.Pearl.setTextureSize(64, 64);
this.Pearl.mirror = true;
this.setRotation(this.Pearl, 0.0f, 0.0f, 0.0f);
(this.Claw1A = new ModelRenderer((ModelBase) this, 0, 28)).addBox(0.0f, 0.0f, 0.0f, 2, 8, 1);
(this.Claw1A = new ModelRenderer(this, 0, 28)).addBox(0.0f, 0.0f, 0.0f, 2, 8, 1);
this.Claw1A.setRotationPoint(-1.0f, 12.0f, 7.0f);
this.Claw1A.setTextureSize(64, 64);
this.Claw1A.mirror = true;
this.setRotation(this.Claw1A, 0.0f, 0.0f, 0.0f);
(this.Claw2A = new ModelRenderer((ModelBase) this, 0, 28)).addBox(0.0f, 0.0f, 0.0f, 2, 8, 1);
(this.Claw2A = new ModelRenderer(this, 0, 28)).addBox(0.0f, 0.0f, 0.0f, 2, 8, 1);
this.Claw2A.setRotationPoint(-1.0f, 12.0f, -8.0f);
this.Claw2A.setTextureSize(64, 64);
this.Claw2A.mirror = true;
this.setRotation(this.Claw2A, 0.0f, 0.0f, 0.0f);
(this.Claw3A = new ModelRenderer((ModelBase) this, 6, 28)).addBox(0.0f, 0.0f, 0.0f, 1, 8, 2);
(this.Claw3A = new ModelRenderer(this, 6, 28)).addBox(0.0f, 0.0f, 0.0f, 1, 8, 2);
this.Claw3A.setRotationPoint(-8.0f, 12.0f, -1.0f);
this.Claw3A.setTextureSize(64, 64);
this.Claw3A.mirror = true;
this.setRotation(this.Claw3A, 0.0f, 0.0f, 0.0f);
(this.Claw4A = new ModelRenderer((ModelBase) this, 6, 28)).addBox(0.0f, 0.0f, 0.0f, 1, 8, 2);
(this.Claw4A = new ModelRenderer(this, 6, 28)).addBox(0.0f, 0.0f, 0.0f, 1, 8, 2);
this.Claw4A.setRotationPoint(7.0f, 12.0f, -1.0f);
this.Claw4A.setTextureSize(64, 64);
this.Claw4A.mirror = true;
this.setRotation(this.Claw4A, 0.0f, 0.0f, 0.0f);
(this.EndA = new ModelRenderer((ModelBase) this, 0, 48)).addBox(0.0f, 0.0f, 0.0f, 4, 2, 4);
(this.EndA = new ModelRenderer(this, 0, 48)).addBox(0.0f, 0.0f, 0.0f, 4, 2, 4);
this.EndA.setRotationPoint(-2.0f, 8.0f, -2.0f);
this.EndA.setTextureSize(64, 64);
this.EndA.mirror = true;
this.setRotation(this.EndA, 0.0f, 0.0f, 0.0f);
(this.Shape1 = new ModelRenderer((ModelBase) this, 0, 38)).addBox(0.0f, 0.0f, 0.0f, 8, 2, 8);
(this.Shape1 = new ModelRenderer(this, 0, 38)).addBox(0.0f, 0.0f, 0.0f, 8, 2, 8);
this.Shape1.setRotationPoint(-4.0f, 10.0f, -4.0f);
this.Shape1.setTextureSize(64, 64);
this.Shape1.mirror = true;
this.setRotation(this.Shape1, 0.0f, 0.0f, 0.0f);
(this.Claw1B = new ModelRenderer((ModelBase) this, 0, 54)).addBox(0.0f, 0.0f, 0.0f, 2, 1, 4);
(this.Claw1B = new ModelRenderer(this, 0, 54)).addBox(0.0f, 0.0f, 0.0f, 2, 1, 4);
this.Claw1B.setRotationPoint(-1.0f, 11.0f, 4.0f);
this.Claw1B.setTextureSize(64, 64);
this.Claw1B.mirror = true;
this.setRotation(this.Claw1B, 0.0f, 0.0f, 0.0f);
(this.Claw2B = new ModelRenderer((ModelBase) this, 0, 54)).addBox(0.0f, 0.0f, 0.0f, 2, 1, 4);
(this.Claw2B = new ModelRenderer(this, 0, 54)).addBox(0.0f, 0.0f, 0.0f, 2, 1, 4);
this.Claw2B.setRotationPoint(-1.0f, 11.0f, -8.0f);
this.Claw2B.setTextureSize(64, 64);
this.Claw2B.mirror = true;
this.setRotation(this.Claw2B, 0.0f, 0.0f, 0.0f);
(this.Claw3B = new ModelRenderer((ModelBase) this, 0, 59)).addBox(0.0f, 0.0f, 0.0f, 4, 1, 2);
(this.Claw3B = new ModelRenderer(this, 0, 59)).addBox(0.0f, 0.0f, 0.0f, 4, 1, 2);
this.Claw3B.setRotationPoint(4.0f, 11.0f, -1.0f);
this.Claw3B.setTextureSize(64, 64);
this.Claw3B.mirror = true;
this.setRotation(this.Claw3B, 0.0f, 0.0f, 0.0f);
(this.Claw4B = new ModelRenderer((ModelBase) this, 0, 59)).addBox(0.0f, 0.0f, 0.0f, 4, 1, 2);
(this.Claw4B = new ModelRenderer(this, 0, 59)).addBox(0.0f, 0.0f, 0.0f, 4, 1, 2);
this.Claw4B.setRotationPoint(-8.0f, 11.0f, -1.0f);
this.Claw4B.setTextureSize(64, 64);
this.Claw4B.mirror = true;
@@ -115,6 +115,6 @@ public class ModelRecombinator extends ModelBase {
public void setRotationAngles(final float f, final float f1, final float f2, final float f3, final float f4,
final float f5) {
super.setRotationAngles(f, f1, f2, f3, f4, f5, (Entity) null);
super.setRotationAngles(f, f1, f2, f3, f4, f5, null);
}
}
@@ -28,72 +28,72 @@ public class ModelSoulBeacon extends ModelBase {
public ModelSoulBeacon() {
this.textureWidth = 64;
this.textureHeight = 64;
(this.Base = new ModelRenderer((ModelBase) this, 0, 23)).addBox(0.0f, 0.0f, 0.0f, 16, 1, 16);
(this.Base = new ModelRenderer(this, 0, 23)).addBox(0.0f, 0.0f, 0.0f, 16, 1, 16);
this.Base.setRotationPoint(-8.0f, 23.0f, -8.0f);
this.Base.setTextureSize(64, 64);
this.Base.mirror = true;
this.setRotation(this.Base, 0.0f, 0.0f, 0.0f);
(this.Core = new ModelRenderer((ModelBase) this, 0, 0)).addBox(0.0f, 0.0f, 0.0f, 12, 11, 12);
(this.Core = new ModelRenderer(this, 0, 0)).addBox(0.0f, 0.0f, 0.0f, 12, 11, 12);
this.Core.setRotationPoint(-6.0f, 12.0f, -6.0f);
this.Core.setTextureSize(64, 64);
this.Core.mirror = true;
this.setRotation(this.Core, 0.0f, 0.0f, 0.0f);
(this.Claw1A = new ModelRenderer((ModelBase) this, 48, 0)).addBox(0.0f, 0.0f, 0.0f, 2, 1, 2);
(this.Claw1A = new ModelRenderer(this, 48, 0)).addBox(0.0f, 0.0f, 0.0f, 2, 1, 2);
this.Claw1A.setRotationPoint(6.0f, 12.0f, -1.0f);
this.Claw1A.setTextureSize(64, 64);
this.Claw1A.mirror = true;
this.setRotation(this.Claw1A, 0.0f, 0.0f, 0.0f);
(this.Claw2A = new ModelRenderer((ModelBase) this, 48, 0)).addBox(0.0f, 0.0f, 0.0f, 2, 1, 2);
(this.Claw2A = new ModelRenderer(this, 48, 0)).addBox(0.0f, 0.0f, 0.0f, 2, 1, 2);
this.Claw2A.setRotationPoint(-8.0f, 12.0f, -1.0f);
this.Claw2A.setTextureSize(64, 64);
this.Claw2A.mirror = true;
this.setRotation(this.Claw2A, 0.0f, 0.0f, 0.0f);
(this.Claw3A = new ModelRenderer((ModelBase) this, 48, 0)).addBox(0.0f, 0.0f, 0.0f, 2, 1, 2);
(this.Claw3A = new ModelRenderer(this, 48, 0)).addBox(0.0f, 0.0f, 0.0f, 2, 1, 2);
this.Claw3A.setRotationPoint(-1.0f, 12.0f, -8.0f);
this.Claw3A.setTextureSize(64, 64);
this.Claw3A.mirror = true;
this.setRotation(this.Claw3A, 0.0f, 0.0f, 0.0f);
(this.Claw4A = new ModelRenderer((ModelBase) this, 48, 0)).addBox(0.0f, 0.0f, 0.0f, 2, 1, 2);
(this.Claw4A = new ModelRenderer(this, 48, 0)).addBox(0.0f, 0.0f, 0.0f, 2, 1, 2);
this.Claw4A.setRotationPoint(-1.0f, 12.0f, 6.0f);
this.Claw4A.setTextureSize(64, 64);
this.Claw4A.mirror = true;
this.setRotation(this.Claw4A, 0.0f, 0.0f, 0.0f);
(this.Claw3B = new ModelRenderer((ModelBase) this, 48, 8)).addBox(0.0f, 0.0f, 0.0f, 2, 4, 1);
(this.Claw3B = new ModelRenderer(this, 48, 8)).addBox(0.0f, 0.0f, 0.0f, 2, 4, 1);
this.Claw3B.setRotationPoint(-1.0f, 8.0f, -8.0f);
this.Claw3B.setTextureSize(64, 64);
this.Claw3B.mirror = true;
this.setRotation(this.Claw3B, 0.0f, 0.0f, 0.0f);
(this.Claw4B = new ModelRenderer((ModelBase) this, 48, 8)).addBox(0.0f, 0.0f, 0.0f, 2, 4, 1);
(this.Claw4B = new ModelRenderer(this, 48, 8)).addBox(0.0f, 0.0f, 0.0f, 2, 4, 1);
this.Claw4B.setRotationPoint(-1.0f, 8.0f, 7.0f);
this.Claw4B.setTextureSize(64, 64);
this.Claw4B.mirror = true;
this.setRotation(this.Claw4B, 0.0f, 0.0f, 0.0f);
(this.Claw1B = new ModelRenderer((ModelBase) this, 48, 16)).addBox(0.0f, 0.0f, 0.0f, 1, 4, 2);
(this.Claw1B = new ModelRenderer(this, 48, 16)).addBox(0.0f, 0.0f, 0.0f, 1, 4, 2);
this.Claw1B.setRotationPoint(7.0f, 8.0f, -1.0f);
this.Claw1B.setTextureSize(64, 64);
this.Claw1B.mirror = true;
this.setRotation(this.Claw1B, 0.0f, 0.0f, 0.0f);
(this.Claw2B = new ModelRenderer((ModelBase) this, 48, 16)).addBox(0.0f, 0.0f, 0.0f, 1, 4, 2);
(this.Claw2B = new ModelRenderer(this, 48, 16)).addBox(0.0f, 0.0f, 0.0f, 1, 4, 2);
this.Claw2B.setRotationPoint(-8.0f, 8.0f, -1.0f);
this.Claw2B.setTextureSize(64, 64);
this.Claw2B.mirror = true;
this.setRotation(this.Claw2B, 0.0f, 0.0f, 0.0f);
(this.Claw1C = new ModelRenderer((ModelBase) this, 48, 48)).addBox(0.0f, 0.0f, 0.0f, 4, 1, 2);
(this.Claw1C = new ModelRenderer(this, 48, 48)).addBox(0.0f, 0.0f, 0.0f, 4, 1, 2);
this.Claw1C.setRotationPoint(3.0f, 8.0f, -1.0f);
this.Claw1C.setTextureSize(64, 64);
this.Claw1C.mirror = true;
this.setRotation(this.Claw1C, 0.0f, 0.0f, 0.0f);
(this.Claw2C = new ModelRenderer((ModelBase) this, 48, 48)).addBox(0.0f, 0.0f, 0.0f, 4, 1, 2);
(this.Claw2C = new ModelRenderer(this, 48, 48)).addBox(0.0f, 0.0f, 0.0f, 4, 1, 2);
this.Claw2C.setRotationPoint(-7.0f, 8.0f, -1.0f);
this.Claw2C.setTextureSize(64, 64);
this.Claw2C.mirror = true;
this.setRotation(this.Claw2C, 0.0f, 0.0f, 0.0f);
(this.Claw3C = new ModelRenderer((ModelBase) this, 0, 48)).addBox(0.0f, 0.0f, 0.0f, 2, 1, 4);
(this.Claw3C = new ModelRenderer(this, 0, 48)).addBox(0.0f, 0.0f, 0.0f, 2, 1, 4);
this.Claw3C.setRotationPoint(-1.0f, 8.0f, -7.0f);
this.Claw3C.setTextureSize(64, 64);
this.Claw3C.mirror = true;
this.setRotation(this.Claw3C, 0.0f, 0.0f, 0.0f);
(this.Claw4C = new ModelRenderer((ModelBase) this, 0, 48)).addBox(0.0f, 0.0f, 0.0f, 2, 1, 4);
(this.Claw4C = new ModelRenderer(this, 0, 48)).addBox(0.0f, 0.0f, 0.0f, 2, 1, 4);
this.Claw4C.setRotationPoint(-1.0f, 8.0f, 3.0f);
this.Claw4C.setTextureSize(64, 64);
this.Claw4C.mirror = true;
@@ -40,122 +40,122 @@ public class ModelSoulSieve extends ModelBase {
public ModelSoulSieve() {
this.textureWidth = 128;
this.textureHeight = 64;
(this.TopSide1 = new ModelRenderer((ModelBase) this, 0, 0)).addBox(0.0f, 0.0f, 0.0f, 16, 6, 1);
(this.TopSide1 = new ModelRenderer(this, 0, 0)).addBox(0.0f, 0.0f, 0.0f, 16, 6, 1);
this.TopSide1.setRotationPoint(-8.0f, 8.0f, 7.0f);
this.TopSide1.setTextureSize(64, 32);
this.TopSide1.mirror = true;
this.setRotation(this.TopSide1, 0.0f, 0.0f, 0.0f);
(this.TopSide2 = new ModelRenderer((ModelBase) this, 0, 9)).addBox(0.0f, 0.0f, 0.0f, 16, 6, 1);
(this.TopSide2 = new ModelRenderer(this, 0, 9)).addBox(0.0f, 0.0f, 0.0f, 16, 6, 1);
this.TopSide2.setRotationPoint(-8.0f, 8.0f, -8.0f);
this.TopSide2.setTextureSize(64, 32);
this.TopSide2.mirror = true;
this.setRotation(this.TopSide2, 0.0f, 0.0f, 0.0f);
(this.TopSide3 = new ModelRenderer((ModelBase) this, 0, 44)).addBox(0.0f, 0.0f, 0.0f, 1, 6, 14);
(this.TopSide3 = new ModelRenderer(this, 0, 44)).addBox(0.0f, 0.0f, 0.0f, 1, 6, 14);
this.TopSide3.setRotationPoint(7.0f, 8.0f, -7.0f);
this.TopSide3.setTextureSize(64, 32);
this.TopSide3.mirror = true;
this.setRotation(this.TopSide3, 0.0f, 0.0f, 0.0f);
(this.TopSide4 = new ModelRenderer((ModelBase) this, 0, 18)).addBox(0.0f, 0.0f, 0.0f, 1, 6, 14);
(this.TopSide4 = new ModelRenderer(this, 0, 18)).addBox(0.0f, 0.0f, 0.0f, 1, 6, 14);
this.TopSide4.setRotationPoint(-8.0f, 8.0f, -7.0f);
this.TopSide4.setTextureSize(64, 32);
this.TopSide4.mirror = true;
this.setRotation(this.TopSide4, 0.0f, 0.0f, 0.0f);
(this.TopBottom = new ModelRenderer((ModelBase) this, 48, 0)).addBox(0.0f, 0.0f, 0.0f, 14, 1, 14);
(this.TopBottom = new ModelRenderer(this, 48, 0)).addBox(0.0f, 0.0f, 0.0f, 14, 1, 14);
this.TopBottom.setRotationPoint(-7.0f, 13.0f, -7.0f);
this.TopBottom.setTextureSize(64, 32);
this.TopBottom.mirror = true;
this.setRotation(this.TopBottom, 0.0f, 0.0f, 0.0f);
(this.Middle = new ModelRenderer((ModelBase) this, 32, 32)).addBox(0.0f, 0.0f, 0.0f, 8, 6, 8);
(this.Middle = new ModelRenderer(this, 32, 32)).addBox(0.0f, 0.0f, 0.0f, 8, 6, 8);
this.Middle.setRotationPoint(-4.0f, 14.0f, -4.0f);
this.Middle.setTextureSize(64, 32);
this.Middle.mirror = true;
this.setRotation(this.Middle, 0.0f, 0.0f, 0.0f);
(this.Bottom = new ModelRenderer((ModelBase) this, 32, 18)).addBox(0.0f, 0.0f, 0.0f, 4, 4, 4);
(this.Bottom = new ModelRenderer(this, 32, 18)).addBox(0.0f, 0.0f, 0.0f, 4, 4, 4);
this.Bottom.setRotationPoint(-2.0f, 20.0f, -2.0f);
this.Bottom.setTextureSize(64, 32);
this.Bottom.mirror = true;
this.setRotation(this.Bottom, 0.0f, 0.0f, 0.0f);
(this.Sand = new ModelRenderer((ModelBase) this, 72, 16)).addBox(0.0f, 0.0f, 0.0f, 14, 3, 14);
(this.Sand = new ModelRenderer(this, 72, 16)).addBox(0.0f, 0.0f, 0.0f, 14, 3, 14);
this.Sand.setRotationPoint(-7.0f, 10.0f, -7.0f);
this.Sand.setTextureSize(64, 32);
this.Sand.mirror = true;
this.setRotation(this.Sand, 0.0f, 0.0f, 0.0f);
(this.SieveSide4 = new ModelRenderer((ModelBase) this, 64, 36)).addBox(0.0f, 0.0f, 0.0f, 2, 1, 5);
(this.SieveSide4 = new ModelRenderer(this, 64, 36)).addBox(0.0f, 0.0f, 0.0f, 2, 1, 5);
this.SieveSide4.setRotationPoint(-1.0f, 8.0f, 2.0f);
this.SieveSide4.setTextureSize(64, 32);
this.SieveSide4.mirror = true;
this.setRotation(this.SieveSide4, 0.0f, 0.0f, 0.0f);
(this.SieveSide3 = new ModelRenderer((ModelBase) this, 64, 36)).addBox(0.0f, 0.0f, 0.0f, 2, 1, 5);
(this.SieveSide3 = new ModelRenderer(this, 64, 36)).addBox(0.0f, 0.0f, 0.0f, 2, 1, 5);
this.SieveSide3.setRotationPoint(-1.0f, 8.0f, -7.0f);
this.SieveSide3.setTextureSize(64, 32);
this.SieveSide3.mirror = true;
this.setRotation(this.SieveSide3, 0.0f, 0.0f, 0.0f);
(this.SieveSide2 = new ModelRenderer((ModelBase) this, 48, 18)).addBox(0.0f, 0.0f, 0.0f, 5, 1, 2);
(this.SieveSide2 = new ModelRenderer(this, 48, 18)).addBox(0.0f, 0.0f, 0.0f, 5, 1, 2);
this.SieveSide2.setRotationPoint(-7.0f, 8.0f, -1.0f);
this.SieveSide2.setTextureSize(64, 32);
this.SieveSide2.mirror = true;
this.setRotation(this.SieveSide2, 0.0f, 0.0f, 0.0f);
(this.SieveSide1 = new ModelRenderer((ModelBase) this, 48, 18)).addBox(0.0f, 0.0f, 0.0f, 5, 1, 2);
(this.SieveSide1 = new ModelRenderer(this, 48, 18)).addBox(0.0f, 0.0f, 0.0f, 5, 1, 2);
this.SieveSide1.setRotationPoint(2.0f, 8.0f, -1.0f);
this.SieveSide1.setTextureSize(64, 32);
this.SieveSide1.mirror = true;
this.setRotation(this.SieveSide1, 0.0f, 0.0f, 0.0f);
(this.SieveCenter4 = new ModelRenderer((ModelBase) this, 36, 0)).addBox(0.0f, 0.0f, 0.0f, 1, 1, 2);
(this.SieveCenter4 = new ModelRenderer(this, 36, 0)).addBox(0.0f, 0.0f, 0.0f, 1, 1, 2);
this.SieveCenter4.setRotationPoint(1.0f, 8.0f, -1.0f);
this.SieveCenter4.setTextureSize(64, 32);
this.SieveCenter4.mirror = true;
this.setRotation(this.SieveCenter4, 0.0f, 0.0f, 0.0f);
(this.SieveCenter3 = new ModelRenderer((ModelBase) this, 36, 0)).addBox(0.0f, 0.0f, 0.0f, 1, 1, 2);
(this.SieveCenter3 = new ModelRenderer(this, 36, 0)).addBox(0.0f, 0.0f, 0.0f, 1, 1, 2);
this.SieveCenter3.setRotationPoint(-2.0f, 8.0f, -1.0f);
this.SieveCenter3.setTextureSize(64, 32);
this.SieveCenter3.mirror = true;
this.setRotation(this.SieveCenter3, 0.0f, 0.0f, 0.0f);
(this.SieveCenter2 = new ModelRenderer((ModelBase) this, 32, 28)).addBox(0.0f, 0.0f, 0.0f, 4, 1, 1);
(this.SieveCenter2 = new ModelRenderer(this, 32, 28)).addBox(0.0f, 0.0f, 0.0f, 4, 1, 1);
this.SieveCenter2.setRotationPoint(-2.0f, 8.0f, 1.0f);
this.SieveCenter2.setTextureSize(64, 32);
this.SieveCenter2.mirror = true;
this.setRotation(this.SieveCenter2, 0.0f, 0.0f, 0.0f);
(this.SieveCenter1 = new ModelRenderer((ModelBase) this, 32, 28)).addBox(0.0f, 0.0f, 0.0f, 4, 1, 1);
(this.SieveCenter1 = new ModelRenderer(this, 32, 28)).addBox(0.0f, 0.0f, 0.0f, 4, 1, 1);
this.SieveCenter1.setRotationPoint(-2.0f, 8.0f, -2.0f);
this.SieveCenter1.setTextureSize(64, 32);
this.SieveCenter1.mirror = true;
this.setRotation(this.SieveCenter1, 0.0f, 0.0f, 0.0f);
(this.SieveOuter4B = new ModelRenderer((ModelBase) this, 62, 24)).addBox(0.0f, 0.0f, 0.0f, 4, 1, 1);
(this.SieveOuter4B = new ModelRenderer(this, 62, 24)).addBox(0.0f, 0.0f, 0.0f, 4, 1, 1);
this.SieveOuter4B.setRotationPoint(-5.0f, 8.0f, -5.0f);
this.SieveOuter4B.setTextureSize(128, 64);
this.SieveOuter4B.mirror = true;
this.setRotation(this.SieveOuter4B, 0.0f, 0.0f, 0.0f);
(this.SieveOuter4A = new ModelRenderer((ModelBase) this, 64, 32)).addBox(0.0f, 0.0f, 0.0f, 1, 1, 3);
(this.SieveOuter4A = new ModelRenderer(this, 64, 32)).addBox(0.0f, 0.0f, 0.0f, 1, 1, 3);
this.SieveOuter4A.setRotationPoint(-5.0f, 8.0f, -4.0f);
this.SieveOuter4A.setTextureSize(128, 64);
this.SieveOuter4A.mirror = true;
this.setRotation(this.SieveOuter4A, 0.0f, 0.0f, 0.0f);
(this.SieveOuter3B = new ModelRenderer((ModelBase) this, 62, 24)).addBox(0.0f, 0.0f, 0.0f, 4, 1, 1);
(this.SieveOuter3B = new ModelRenderer(this, 62, 24)).addBox(0.0f, 0.0f, 0.0f, 4, 1, 1);
this.SieveOuter3B.setRotationPoint(1.0f, 8.0f, -5.0f);
this.SieveOuter3B.setTextureSize(128, 64);
this.SieveOuter3B.mirror = true;
this.setRotation(this.SieveOuter3B, 0.0f, 0.0f, 0.0f);
(this.SieveOuter3A = new ModelRenderer((ModelBase) this, 64, 32)).addBox(0.0f, 0.0f, 0.0f, 1, 1, 3);
(this.SieveOuter3A = new ModelRenderer(this, 64, 32)).addBox(0.0f, 0.0f, 0.0f, 1, 1, 3);
this.SieveOuter3A.setRotationPoint(4.0f, 8.0f, -4.0f);
this.SieveOuter3A.setTextureSize(128, 64);
this.SieveOuter3A.mirror = true;
this.setRotation(this.SieveOuter3A, 0.0f, 0.0f, 0.0f);
(this.SieveOuter2A = new ModelRenderer((ModelBase) this, 64, 32)).addBox(0.0f, 0.0f, 0.0f, 1, 1, 3);
(this.SieveOuter2A = new ModelRenderer(this, 64, 32)).addBox(0.0f, 0.0f, 0.0f, 1, 1, 3);
this.SieveOuter2A.setRotationPoint(4.0f, 8.0f, 1.0f);
this.SieveOuter2A.setTextureSize(128, 64);
this.SieveOuter2A.mirror = true;
this.setRotation(this.SieveOuter2A, 0.0f, 0.0f, 0.0f);
(this.SieveOuter2B = new ModelRenderer((ModelBase) this, 62, 24)).addBox(0.0f, 0.0f, 0.0f, 4, 1, 1);
(this.SieveOuter2B = new ModelRenderer(this, 62, 24)).addBox(0.0f, 0.0f, 0.0f, 4, 1, 1);
this.SieveOuter2B.setRotationPoint(1.0f, 8.0f, 4.0f);
this.SieveOuter2B.setTextureSize(128, 64);
this.SieveOuter2B.mirror = true;
this.setRotation(this.SieveOuter2B, 0.0f, 0.0f, 0.0f);
(this.SieveOuter1B = new ModelRenderer((ModelBase) this, 62, 24)).addBox(0.0f, 0.0f, 0.0f, 4, 1, 1);
(this.SieveOuter1B = new ModelRenderer(this, 62, 24)).addBox(0.0f, 0.0f, 0.0f, 4, 1, 1);
this.SieveOuter1B.setRotationPoint(-5.0f, 8.0f, 4.0f);
this.SieveOuter1B.setTextureSize(128, 64);
this.SieveOuter1B.mirror = true;
this.setRotation(this.SieveOuter1B, 0.0f, 0.0f, 0.0f);
(this.SieveOuter1A = new ModelRenderer((ModelBase) this, 64, 32)).addBox(0.0f, 0.0f, 0.0f, 1, 1, 3);
(this.SieveOuter1A = new ModelRenderer(this, 64, 32)).addBox(0.0f, 0.0f, 0.0f, 1, 1, 3);
this.SieveOuter1A.setRotationPoint(-5.0f, 8.0f, 1.0f);
this.SieveOuter1A.setTextureSize(128, 64);
this.SieveOuter1A.mirror = true;
@@ -22,42 +22,42 @@ public class ModelSoulforge extends ModelBase {
public ModelSoulforge() {
this.textureWidth = 64;
this.textureHeight = 64;
(this.BrainTank = new ModelRenderer((ModelBase) this, 0, 0)).addBox(0.0f, 0.0f, 0.0f, 16, 8, 16);
(this.BrainTank = new ModelRenderer(this, 0, 0)).addBox(0.0f, 0.0f, 0.0f, 16, 8, 16);
this.BrainTank.setRotationPoint(-8.0f, 16.0f, -8.0f);
this.BrainTank.setTextureSize(64, 64);
this.BrainTank.mirror = true;
this.setRotation(this.BrainTank, 0.0f, 0.0f, 0.0f);
(this.Neck = new ModelRenderer((ModelBase) this, 0, 24)).addBox(0.0f, 0.0f, 0.0f, 5, 2, 5);
(this.Neck = new ModelRenderer(this, 0, 24)).addBox(0.0f, 0.0f, 0.0f, 5, 2, 5);
this.Neck.setRotationPoint(-2.5f, 14.0f, -2.5f);
this.Neck.setTextureSize(64, 64);
this.Neck.mirror = true;
this.setRotation(this.Neck, 0.0f, 0.0f, 0.0f);
(this.SoulTank = new ModelRenderer((ModelBase) this, 0, 48)).addBox(0.0f, 0.0f, 0.0f, 10, 6, 10);
(this.SoulTank = new ModelRenderer(this, 0, 48)).addBox(0.0f, 0.0f, 0.0f, 10, 6, 10);
this.SoulTank.setRotationPoint(-5.0f, 8.0f, -5.0f);
this.SoulTank.setTextureSize(64, 64);
this.SoulTank.mirror = true;
this.setRotation(this.SoulTank, 0.0f, 0.0f, 0.0f);
(this.Rod1 = new ModelRenderer((ModelBase) this, 0, 31)).addBox(0.0f, 0.0f, 0.0f, 1, 4, 1);
(this.Rod1 = new ModelRenderer(this, 0, 31)).addBox(0.0f, 0.0f, 0.0f, 1, 4, 1);
this.Rod1.setRotationPoint(-8.0f, 12.0f, -8.0f);
this.Rod1.setTextureSize(64, 64);
this.Rod1.mirror = true;
this.setRotation(this.Rod1, 0.0f, 0.0f, 0.0f);
(this.Rod2 = new ModelRenderer((ModelBase) this, 0, 31)).addBox(0.0f, 0.0f, 0.0f, 1, 4, 1);
(this.Rod2 = new ModelRenderer(this, 0, 31)).addBox(0.0f, 0.0f, 0.0f, 1, 4, 1);
this.Rod2.setRotationPoint(-8.0f, 12.0f, 7.0f);
this.Rod2.setTextureSize(64, 64);
this.Rod2.mirror = true;
this.setRotation(this.Rod2, 0.0f, 0.0f, 0.0f);
(this.Rod3 = new ModelRenderer((ModelBase) this, 0, 31)).addBox(0.0f, 0.0f, 0.0f, 1, 4, 1);
(this.Rod3 = new ModelRenderer(this, 0, 31)).addBox(0.0f, 0.0f, 0.0f, 1, 4, 1);
this.Rod3.setRotationPoint(7.0f, 12.0f, 7.0f);
this.Rod3.setTextureSize(64, 64);
this.Rod3.mirror = true;
this.setRotation(this.Rod3, 0.0f, 0.0f, 0.0f);
(this.Rod4 = new ModelRenderer((ModelBase) this, 0, 31)).addBox(0.0f, 0.0f, 0.0f, 1, 4, 1);
(this.Rod4 = new ModelRenderer(this, 0, 31)).addBox(0.0f, 0.0f, 0.0f, 1, 4, 1);
this.Rod4.setRotationPoint(7.0f, 12.0f, -8.0f);
this.Rod4.setTextureSize(64, 64);
this.Rod4.mirror = true;
this.setRotation(this.Rod4, 0.0f, 0.0f, 0.0f);
(this.Brine = new ModelRenderer((ModelBase) this, 0, 0)).addBox(-7.0f, 17.0f, -7.0f, 14, 6, 14);
(this.Brine = new ModelRenderer(this, 0, 0)).addBox(-7.0f, 17.0f, -7.0f, 14, 6, 14);
this.Brine.setRotationPoint(0.0f, 0.0f, 0.0f);
this.Brine.setTextureSize(64, 32);
this.Brine.mirror = true;
@@ -26,22 +26,22 @@ public class ModelSyringe extends ModelBase {
public ModelSyringe() {
this.textureWidth = 64;
this.textureHeight = 32;
(this.Body = new ModelRenderer((ModelBase) this, 0, 0)).addBox(0.0f, 0.0f, 0.0f, 9, 3, 3);
(this.Body = new ModelRenderer(this, 0, 0)).addBox(0.0f, 0.0f, 0.0f, 9, 3, 3);
this.Body.setRotationPoint(-3.0f, 21.0f, -1.0f);
this.Body.setTextureSize(64, 32);
this.Body.mirror = true;
this.setRotation(this.Body, 0.0f, 0.0f, 0.0f);
(this.Needle = new ModelRenderer((ModelBase) this, 25, 0)).addBox(0.0f, 0.0f, 0.0f, 4, 1, 1);
(this.Needle = new ModelRenderer(this, 25, 0)).addBox(0.0f, 0.0f, 0.0f, 4, 1, 1);
this.Needle.setRotationPoint(-7.0f, 22.0f, 0.0f);
this.Needle.setTextureSize(64, 32);
this.Needle.mirror = true;
this.setRotation(this.Needle, 0.0f, 0.0f, 0.0f);
(this.PlungerA = new ModelRenderer((ModelBase) this, 0, 8)).addBox(0.0f, 0.0f, 0.0f, 1, 1, 1);
(this.PlungerA = new ModelRenderer(this, 0, 8)).addBox(0.0f, 0.0f, 0.0f, 1, 1, 1);
this.PlungerA.setRotationPoint(6.0f, 22.0f, 0.0f);
this.PlungerA.setTextureSize(64, 32);
this.PlungerA.mirror = true;
this.setRotation(this.PlungerA, 0.0f, 0.0f, 0.0f);
(this.PlungerB = new ModelRenderer((ModelBase) this, 0, 12)).addBox(0.0f, 0.0f, 0.0f, 1, 3, 3);
(this.PlungerB = new ModelRenderer(this, 0, 12)).addBox(0.0f, 0.0f, 0.0f, 1, 3, 3);
this.PlungerB.setRotationPoint(7.0f, 21.0f, -1.0f);
this.PlungerB.setTextureSize(64, 32);
this.PlungerB.mirror = true;
@@ -60,7 +60,7 @@ public class ModelSyringe extends ModelBase {
} else {
GL11.glColor4f(red, green, blue, 0.5f);
}
} else if (entity != null && entity instanceof EntitySyringe) {
} else if (entity instanceof EntitySyringe) {
final Color col = new Color(((EntitySyringe) entity).color);
final float red = col.getRed() / 255.0f;
final float green = col.getGreen() / 255.0f;
@@ -19,27 +19,27 @@ public class ModelVat extends ModelBase {
public ModelVat() {
this.textureWidth = 512;
this.textureHeight = 512;
(this.Base = new ModelRenderer((ModelBase) this, 0, 0)).addBox(0.0f, 0.0f, 0.0f, 48, 16, 48);
(this.Base = new ModelRenderer(this, 0, 0)).addBox(0.0f, 0.0f, 0.0f, 48, 16, 48);
this.Base.setRotationPoint(-24.0f, 8.0f, -24.0f);
this.Base.setTextureSize(512, 512);
this.Base.mirror = true;
this.setRotation(this.Base, 0.0f, 0.0f, 0.0f);
(this.Water = new ModelRenderer((ModelBase) this, 256, 0)).addBox(0.0f, 0.0f, 0.0f, 40, 32, 40);
(this.Water = new ModelRenderer(this, 256, 0)).addBox(0.0f, 0.0f, 0.0f, 40, 32, 40);
this.Water.setRotationPoint(-20.0f, -24.0f, -20.0f);
this.Water.setTextureSize(512, 512);
this.Water.mirror = true;
this.setRotation(this.Water, 0.0f, 0.0f, 0.0f);
(this.Glass = new ModelRenderer((ModelBase) this, 0, 128)).addBox(0.0f, 0.0f, 0.0f, 48, 32, 48);
(this.Glass = new ModelRenderer(this, 0, 128)).addBox(0.0f, 0.0f, 0.0f, 48, 32, 48);
this.Glass.setRotationPoint(-24.0f, -24.0f, -24.0f);
this.Glass.setTextureSize(512, 512);
this.Glass.mirror = true;
this.setRotation(this.Glass, 0.0f, 0.0f, 0.0f);
(this.Top = new ModelRenderer((ModelBase) this, 256, 128)).addBox(0.0f, 0.0f, 0.0f, 48, 14, 48);
(this.Top = new ModelRenderer(this, 256, 128)).addBox(0.0f, 0.0f, 0.0f, 48, 14, 48);
this.Top.setRotationPoint(-24.0f, -38.0f, -24.0f);
this.Top.setTextureSize(512, 512);
this.Top.mirror = true;
this.setRotation(this.Top, 0.0f, 0.0f, 0.0f);
(this.Hatch = new ModelRenderer((ModelBase) this, 0, 80)).addBox(0.0f, 0.0f, 0.0f, 16, 2, 16);
(this.Hatch = new ModelRenderer(this, 0, 80)).addBox(0.0f, 0.0f, 0.0f, 16, 2, 16);
this.Hatch.setRotationPoint(-8.0f, -40.0f, -8.0f);
this.Hatch.setTextureSize(512, 512);
this.Hatch.mirror = true;
@@ -28,72 +28,72 @@ public class ModelVortexAttenuator extends ModelBase {
public ModelVortexAttenuator() {
this.textureWidth = 64;
this.textureHeight = 64;
(this.Base = new ModelRenderer((ModelBase) this, 0, 0)).addBox(0.0f, 0.0f, 0.0f, 16, 4, 16);
(this.Base = new ModelRenderer(this, 0, 0)).addBox(0.0f, 0.0f, 0.0f, 16, 4, 16);
this.Base.setRotationPoint(-8.0f, 20.0f, -8.0f);
this.Base.setTextureSize(64, 64);
this.Base.mirror = true;
this.setRotation(this.Base, 0.0f, 0.0f, 0.0f);
(this.Rod = new ModelRenderer((ModelBase) this, 0, 20)).addBox(0.0f, 0.0f, 0.0f, 2, 12, 2);
(this.Rod = new ModelRenderer(this, 0, 20)).addBox(0.0f, 0.0f, 0.0f, 2, 12, 2);
this.Rod.setRotationPoint(-1.0f, 8.0f, -1.0f);
this.Rod.setTextureSize(64, 64);
this.Rod.mirror = true;
this.setRotation(this.Rod, 0.0f, 0.0f, 0.0f);
(this.Ring_A1 = new ModelRenderer((ModelBase) this, 0, 34)).addBox(0.0f, 0.0f, 0.0f, 12, 1, 1);
(this.Ring_A1 = new ModelRenderer(this, 0, 34)).addBox(0.0f, 0.0f, 0.0f, 12, 1, 1);
this.Ring_A1.setRotationPoint(-6.0f, 18.0f, -6.0f);
this.Ring_A1.setTextureSize(64, 64);
this.Ring_A1.mirror = true;
this.setRotation(this.Ring_A1, 0.0f, 0.0f, 0.0f);
(this.Ring_A2 = new ModelRenderer((ModelBase) this, 0, 34)).addBox(0.0f, 0.0f, 0.0f, 12, 1, 1);
(this.Ring_A2 = new ModelRenderer(this, 0, 34)).addBox(0.0f, 0.0f, 0.0f, 12, 1, 1);
this.Ring_A2.setRotationPoint(-6.0f, 18.0f, 5.0f);
this.Ring_A2.setTextureSize(64, 64);
this.Ring_A2.mirror = true;
this.setRotation(this.Ring_A2, 0.0f, 0.0f, 0.0f);
(this.Ring_A3 = new ModelRenderer((ModelBase) this, 0, 36)).addBox(0.0f, 0.0f, 0.0f, 1, 1, 10);
(this.Ring_A3 = new ModelRenderer(this, 0, 36)).addBox(0.0f, 0.0f, 0.0f, 1, 1, 10);
this.Ring_A3.setRotationPoint(5.0f, 18.0f, -5.0f);
this.Ring_A3.setTextureSize(64, 64);
this.Ring_A3.mirror = true;
this.setRotation(this.Ring_A3, 0.0f, 0.0f, 0.0f);
(this.Ring_A4 = new ModelRenderer((ModelBase) this, 0, 36)).addBox(0.0f, 0.0f, 0.0f, 1, 1, 10);
(this.Ring_A4 = new ModelRenderer(this, 0, 36)).addBox(0.0f, 0.0f, 0.0f, 1, 1, 10);
this.Ring_A4.setRotationPoint(-6.0f, 18.0f, -5.0f);
this.Ring_A4.setTextureSize(64, 64);
this.Ring_A4.mirror = true;
this.setRotation(this.Ring_A4, 0.0f, 0.0f, 0.0f);
(this.Ring_B1 = new ModelRenderer((ModelBase) this, 0, 47)).addBox(0.0f, 0.0f, 0.0f, 8, 1, 1);
(this.Ring_B1 = new ModelRenderer(this, 0, 47)).addBox(0.0f, 0.0f, 0.0f, 8, 1, 1);
this.Ring_B1.setRotationPoint(-4.0f, 15.0f, 3.0f);
this.Ring_B1.setTextureSize(64, 64);
this.Ring_B1.mirror = true;
this.setRotation(this.Ring_B1, 0.0f, 0.0f, 0.0f);
(this.Ring_B2 = new ModelRenderer((ModelBase) this, 0, 47)).addBox(0.0f, 0.0f, 0.0f, 8, 1, 1);
(this.Ring_B2 = new ModelRenderer(this, 0, 47)).addBox(0.0f, 0.0f, 0.0f, 8, 1, 1);
this.Ring_B2.setRotationPoint(-4.0f, 15.0f, -4.0f);
this.Ring_B2.setTextureSize(64, 64);
this.Ring_B2.mirror = true;
this.setRotation(this.Ring_B2, 0.0f, 0.0f, 0.0f);
(this.Ring_B3 = new ModelRenderer((ModelBase) this, 0, 49)).addBox(0.0f, 0.0f, 0.0f, 1, 1, 6);
(this.Ring_B3 = new ModelRenderer(this, 0, 49)).addBox(0.0f, 0.0f, 0.0f, 1, 1, 6);
this.Ring_B3.setRotationPoint(3.0f, 15.0f, -3.0f);
this.Ring_B3.setTextureSize(64, 64);
this.Ring_B3.mirror = true;
this.setRotation(this.Ring_B3, 0.0f, 0.0f, 0.0f);
(this.Ring_B4 = new ModelRenderer((ModelBase) this, 0, 49)).addBox(0.0f, 0.0f, 0.0f, 1, 1, 6);
(this.Ring_B4 = new ModelRenderer(this, 0, 49)).addBox(0.0f, 0.0f, 0.0f, 1, 1, 6);
this.Ring_B4.setRotationPoint(-4.0f, 15.0f, -3.0f);
this.Ring_B4.setTextureSize(64, 64);
this.Ring_B4.mirror = true;
this.setRotation(this.Ring_B4, 0.0f, 0.0f, 0.0f);
(this.Ring_C1 = new ModelRenderer((ModelBase) this, 0, 56)).addBox(0.0f, 0.0f, 0.0f, 4, 1, 1);
(this.Ring_C1 = new ModelRenderer(this, 0, 56)).addBox(0.0f, 0.0f, 0.0f, 4, 1, 1);
this.Ring_C1.setRotationPoint(-2.0f, 12.0f, -2.0f);
this.Ring_C1.setTextureSize(64, 64);
this.Ring_C1.mirror = true;
this.setRotation(this.Ring_C1, 0.0f, 0.0f, 0.0f);
(this.Ring_C2 = new ModelRenderer((ModelBase) this, 0, 56)).addBox(0.0f, 0.0f, 0.0f, 4, 1, 1);
(this.Ring_C2 = new ModelRenderer(this, 0, 56)).addBox(0.0f, 0.0f, 0.0f, 4, 1, 1);
this.Ring_C2.setRotationPoint(-2.0f, 12.0f, 1.0f);
this.Ring_C2.setTextureSize(64, 64);
this.Ring_C2.mirror = true;
this.setRotation(this.Ring_C2, 0.0f, 0.0f, 0.0f);
(this.Ring_C3 = new ModelRenderer((ModelBase) this, 0, 58)).addBox(0.0f, 0.0f, 0.0f, 1, 1, 2);
(this.Ring_C3 = new ModelRenderer(this, 0, 58)).addBox(0.0f, 0.0f, 0.0f, 1, 1, 2);
this.Ring_C3.setRotationPoint(1.0f, 12.0f, -1.0f);
this.Ring_C3.setTextureSize(64, 64);
this.Ring_C3.mirror = true;
this.setRotation(this.Ring_C3, 0.0f, 0.0f, 0.0f);
(this.Ring_C4 = new ModelRenderer((ModelBase) this, 0, 58)).addBox(0.0f, 0.0f, 0.0f, 1, 1, 2);
(this.Ring_C4 = new ModelRenderer(this, 0, 58)).addBox(0.0f, 0.0f, 0.0f, 1, 1, 2);
this.Ring_C4.setRotationPoint(-2.0f, 12.0f, -1.0f);
this.Ring_C4.setTextureSize(64, 64);
this.Ring_C4.mirror = true;
@@ -128,6 +128,6 @@ public class ModelVortexAttenuator extends ModelBase {
public void setRotationAngles(final float f, final float f1, final float f2, final float f3, final float f4,
final float f5) {
super.setRotationAngles(f, f1, f2, f3, f4, f5, (Entity) null);
super.setRotationAngles(f, f1, f2, f3, f4, f5, null);
}
}
@@ -13,17 +13,16 @@ import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.tileentity.TileEntity;
import net.minecraftforge.client.IItemRenderer;
import org.lwjgl.opengl.GL11;
import thaumcraft.client.lib.UtilsFX;
import thaumcraft.common.config.ConfigBlocks;
import com.kentington.thaumichorizons.common.ThaumicHorizons;
import com.kentington.thaumichorizons.common.tiles.TileSoulJar;
import thaumcraft.client.lib.UtilsFX;
import thaumcraft.common.config.ConfigBlocks;
public class ItemJarTHRenderer implements IItemRenderer {
static String tx3;
@@ -50,43 +49,43 @@ public class ItemJarTHRenderer implements IItemRenderer {
if (item.hasTagCompound() && item.stackTagCompound.getBoolean("isSoul")) {
final long nt = System.nanoTime();
UtilsFX.bindTexture("thaumichorizons", ItemJarTHRenderer.tx3);
GL11.glEnable(3042);
GL11.glAlphaFunc(516, 0.003921569f);
GL11.glDisable(2929);
GL11.glDisable(2884);
GL11.glEnable(GL11.GL_BLEND);
GL11.glAlphaFunc(GL11.GL_GREATER, 0.003921569f);
GL11.glDisable(GL11.GL_DEPTH_TEST);
GL11.glDisable(GL11.GL_CULL_FACE);
GL11.glPushMatrix();
GL11.glTranslated(0.0, 0.4, 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.renderAnimatedQuad(0.3f, 0.9f, 16, (int) (nt / 40000000L % 16L), 0.0f, 16777215);
GL11.glDisable(3042);
GL11.glDisable(GL11.GL_BLEND);
GL11.glPopMatrix();
GL11.glEnable(2884);
GL11.glEnable(2929);
GL11.glDisable(3042);
GL11.glEnable(GL11.GL_CULL_FACE);
GL11.glEnable(GL11.GL_DEPTH_TEST);
GL11.glDisable(GL11.GL_BLEND);
} else if (item.hasTagCompound()) {
final TileSoulJar th = new TileSoulJar();
GL11.glPushMatrix();
GL11.glRotatef(90.0f, 0.0f, 1.0f, 0.0f);
GL11.glTranslatef(-0.5f, 0.0f, -0.5f);
final EntityLivingBase viewer = (EntityLivingBase) Minecraft.getMinecraft().thePlayer;
final EntityLivingBase viewer = Minecraft.getMinecraft().thePlayer;
th.entity = EntityList.createEntityFromNBT(item.getTagCompound(), viewer.worldObj);
TileEntityRendererDispatcher.instance.renderTileEntityAt((TileEntity) th, 0.0, 0.0, 0.0, 0.0f);
GL11.glBlendFunc(770, 771);
TileEntityRendererDispatcher.instance.renderTileEntityAt(th, 0.0, 0.0, 0.0, 0.0f);
GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA);
Minecraft.getMinecraft().entityRenderer.disableLightmap(0.0);
GL11.glPopMatrix();
}
GL11.glPushMatrix();
GL11.glTranslatef(0.0f, 0.5f, 0.0f);
GL11.glEnable(3042);
GL11.glBlendFunc(770, 771);
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, 1.0f);
Minecraft.getMinecraft().renderEngine.bindTexture(TextureMap.locationBlocksTexture);
final RenderBlocks rb = (RenderBlocks) data[0];
rb.useInventoryTint = true;
rb.renderBlockAsItem(ConfigBlocks.blockJar, 0, 1.0f);
GL11.glPopMatrix();
GL11.glDisable(3042);
GL11.glDisable(GL11.GL_BLEND);
}
}
@@ -10,19 +10,19 @@ import net.minecraft.tileentity.TileEntity;
import org.lwjgl.opengl.GL11;
import thaumcraft.client.lib.UtilsFX;
import com.kentington.thaumichorizons.client.renderer.model.ModelBloodInfuser;
import com.kentington.thaumichorizons.client.renderer.model.ModelSyringe;
import com.kentington.thaumichorizons.common.ThaumicHorizons;
import com.kentington.thaumichorizons.common.tiles.TileBloodInfuser;
import thaumcraft.client.lib.UtilsFX;
public class TileBloodInfuserRender extends TileEntitySpecialRenderer {
static String tx1;
private ModelBloodInfuser base;
private final ModelBloodInfuser base;
static String tx2;
private ModelSyringe syringe;
private final ModelSyringe syringe;
public TileBloodInfuserRender() {
this.base = new ModelBloodInfuser();
@@ -21,7 +21,7 @@ import com.kentington.thaumichorizons.common.tiles.TileCloud;
public class TileCloudRender extends TileEntitySpecialRenderer {
private Minecraft mc;
private final Minecraft mc;
Random random;
private int rendererUpdateCount;
private static final ResourceLocation locationRainPng;
@@ -51,7 +51,7 @@ public class TileCloudRender extends TileEntitySpecialRenderer {
return;
}
final float f1 = 1.0f;
GL11.glAlphaFunc(516, 0.1f);
GL11.glAlphaFunc(GL11.GL_GREATER, 0.1f);
if (f1 > 0.0f) {
final Tessellator tessellator = Tessellator.instance;
final BiomeGenBase biomegenbase = tco.getWorldObj().getBiomeGenForCoords(tco.xCoord, tco.zCoord);
@@ -62,11 +62,11 @@ public class TileCloudRender extends TileEntitySpecialRenderer {
} else {
this.bindTexture(TileCloudRender.locationSnowPng);
}
GL11.glTexParameterf(3553, 10242, 10497.0f);
GL11.glTexParameterf(3553, 10243, 10497.0f);
GL11.glDisable(2896);
GL11.glDisable(2884);
GL11.glDisable(3042);
GL11.glTexParameterf(GL11.GL_TEXTURE_2D, GL11.GL_TEXTURE_WRAP_S, 10497.0f);
GL11.glTexParameterf(GL11.GL_TEXTURE_2D, GL11.GL_TEXTURE_WRAP_T, 10497.0f);
GL11.glDisable(GL11.GL_LIGHTING);
GL11.glDisable(GL11.GL_CULL_FACE);
GL11.glDisable(GL11.GL_BLEND);
GL11.glDepthMask(true);
OpenGlHelper.glBlendFunc(770, 1, 1, 0);
final float f2 = tco.getWorldObj().getTotalWorldTime() + p_147500_8_ + tco.xCoord + 16 * tco.zCoord;
@@ -75,41 +75,29 @@ public class TileCloudRender extends TileEntitySpecialRenderer {
final double d3 = f2 * 0.025 * (1.0 - (b0 & 0x1) * 2.5);
tessellator.startDrawingQuads();
switch (tco.md) {
case 1: {
case 1, 7 -> {
tessellator.setColorRGBA(255, 255, 255, 255);
break;
}
case 3: {
case 3 -> {
tessellator.setColorRGBA(32, 255, 64, 255);
break;
}
case 4: {
case 4 -> {
tessellator.setColorRGBA(64, 64, 64, 255);
break;
}
case 5: {
case 5 -> {
tessellator.setColorRGBA(255, 64, 32, 255);
break;
}
case 6: {
case 6 -> {
tessellator.setColorRGBA(170, 64, 200, 255);
break;
}
case 7: {
tessellator.setColorRGBA(255, 255, 255, 255);
break;
}
case 8: {
case 8 -> {
tessellator.setColorRGBA(160, 255, 160, 255);
break;
}
case 9: {
case 9 -> {
tessellator.setColorRGBA(255, 230, 64, 255);
break;
}
default: {
default -> {
tessellator.setColorRGBA(32, 64, 255, 255);
break;
}
}
final double d4 = 0.0;
@@ -142,8 +130,8 @@ public class TileCloudRender extends TileEntitySpecialRenderer {
tessellator.addVertexWithUV(p_147500_2_ + d4, p_147500_4_, p_147500_6_ + d5, d13, d15);
tessellator.addVertexWithUV(p_147500_2_ + d4, p_147500_4_ - d12, p_147500_6_ + d5, d13, d16);
tessellator.draw();
GL11.glEnable(2896);
GL11.glEnable(3553);
GL11.glEnable(GL11.GL_LIGHTING);
GL11.glEnable(GL11.GL_TEXTURE_2D);
GL11.glDepthMask(true);
}
}
@@ -5,7 +5,6 @@
package com.kentington.thaumichorizons.client.renderer.tile;
import net.minecraft.client.Minecraft;
import net.minecraft.client.particle.EntityFX;
import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.ResourceLocation;
@@ -14,21 +13,21 @@ import net.minecraftforge.client.model.IModelCustom;
import org.lwjgl.opengl.GL11;
import thaumcraft.client.fx.ParticleEngine;
import thaumcraft.client.lib.UtilsFX;
import com.kentington.thaumichorizons.client.fx.FXEssentiaTrail;
import com.kentington.thaumichorizons.client.renderer.model.ModelQuarterBlock;
import com.kentington.thaumichorizons.common.tiles.TileEssentiaDynamo;
import thaumcraft.client.fx.ParticleEngine;
import thaumcraft.client.lib.UtilsFX;
public class TileEssentiaDynamoRender extends TileEntitySpecialRenderer {
private IModelCustom model;
private final IModelCustom model;
private static final ResourceLocation SCANNER;
static String tx1;
static String tx2;
static String tx3;
private ModelQuarterBlock base;
private final ModelQuarterBlock base;
public TileEssentiaDynamoRender() {
this.model = AdvancedModelLoader.loadModel(TileEssentiaDynamoRender.SCANNER);
@@ -50,20 +49,20 @@ public class TileEssentiaDynamoRender extends TileEntitySpecialRenderer {
tco.essentia.getColor(),
0.3f);
fb.noClip = true;
ParticleEngine.instance.addEffect(tco.getWorldObj(), (EntityFX) fb);
ParticleEngine.instance.addEffect(tco.getWorldObj(), fb);
}
if (tco.rise >= 0.3f && tco.ticksProvided > 0) {
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);
final long nt = System.nanoTime();
UtilsFX.bindTexture(TileEssentiaDynamoRender.tx3);
final int frames = UtilsFX.getTextureAnimationSize(TileEssentiaDynamoRender.tx3);
final int i = (int) ((nt / 40000000L + x) % frames);
UtilsFX.renderFacingQuad(
tco.xCoord + 0.5,
(double) (tco.yCoord + 0.5f),
tco.yCoord + 0.5f,
tco.zCoord + 0.5,
0.0f,
0.2f,
@@ -72,8 +71,8 @@ public class TileEssentiaDynamoRender extends TileEntitySpecialRenderer {
i,
f,
tco.essentia.getColor());
GL11.glDisable(3042);
GL11.glAlphaFunc(516, 0.1f);
GL11.glDisable(GL11.GL_BLEND);
GL11.glAlphaFunc(GL11.GL_GREATER, 0.1f);
GL11.glPopMatrix();
}
GL11.glPushMatrix();
@@ -18,16 +18,17 @@ import net.minecraft.util.MovingObjectPosition;
import net.minecraft.util.Vec3;
import org.lwjgl.opengl.GL11;
import org.lwjgl.opengl.GL12;
import com.kentington.thaumichorizons.common.tiles.TileSyntheticNode;
import thaumcraft.api.aspects.Aspect;
import thaumcraft.client.lib.UtilsFX;
import thaumcraft.client.renderers.models.ModelCrystal;
import com.kentington.thaumichorizons.common.tiles.TileSyntheticNode;
public class TileEtherealShardRender extends TileEntitySpecialRenderer {
private ModelCrystal model;
private final ModelCrystal model;
static String tx1;
static String tx2;
@@ -67,7 +68,7 @@ public class TileEtherealShardRender extends TileEntitySpecialRenderer {
try {
final Color col2 = new Color((int) red, (int) green, (int) blue);
UtilsFX.bindTexture("textures/models/crystal.png");
final Random rand = new Random(tco.getBlockMetadata() + tco.xCoord + tco.yCoord * tco.zCoord);
final Random rand = new Random(tco.getBlockMetadata() + tco.xCoord + (long) tco.yCoord * tco.zCoord);
this.drawCrystal(0, (float) x, (float) y, (float) z, tco.rotation, 0.0f, rand, col2.getRGB(), 1.1f);
final long nt = System.nanoTime();
UtilsFX.bindTexture(TileEtherealShardRender.tx2);
@@ -80,7 +81,7 @@ public class TileEtherealShardRender extends TileEntitySpecialRenderer {
&& tco.getAspectsBase().getAspects()[0] != null) {
final double offset = 6.283185307179586 / tco.getAspectsBase().size();
int which = 0;
GL11.glAlphaFunc(516, 0.003921569f);
GL11.glAlphaFunc(GL11.GL_GREATER, 0.003921569f);
GL11.glDepthMask(false);
for (final Aspect asp2 : tco.getAspectsBase().getAspects()) {
if (asp2 == null) {
@@ -88,8 +89,8 @@ public class TileEtherealShardRender extends TileEntitySpecialRenderer {
}
final Color colo = new Color(asp2.getColor());
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);
final double radian = Math.toRadians(tco.rotation);
final double dist = 0.4 + 0.1 * Math.cos(radian);
UtilsFX.renderFacingStrip(
@@ -104,12 +105,12 @@ public class TileEtherealShardRender extends TileEntitySpecialRenderer {
(int) tco.rotation % frames,
f,
colo.getRGB());
GL11.glDisable(3042);
GL11.glDisable(GL11.GL_BLEND);
GL11.glPopMatrix();
++which;
}
GL11.glDepthMask(true);
GL11.glAlphaFunc(516, 0.1f);
GL11.glAlphaFunc(GL11.GL_GREATER, 0.1f);
}
if (tco != null && tco.drainEntity != null && tco.drainCollision != null) {
final Entity drainEntity = tco.drainEntity;
@@ -128,11 +129,11 @@ public class TileEtherealShardRender extends TileEntitySpecialRenderer {
final Vec3 vec3 = Vec3.createVectorHelper(-0.1, -0.1, 0.5);
vec3.rotateAroundX(
-(drainEntity.prevRotationPitch
+ (drainEntity.rotationPitch - drainEntity.prevRotationPitch) * f) * 3.141593f
+ (drainEntity.rotationPitch - drainEntity.prevRotationPitch) * f) * (float) Math.PI
/ 180.0f);
vec3.rotateAroundY(
-(drainEntity.prevRotationYaw + (drainEntity.rotationYaw - drainEntity.prevRotationYaw) * f)
* 3.141593f
* (float) Math.PI
/ 180.0f);
vec3.rotateAroundY(-f2 * 0.01f);
vec3.rotateAroundX(-f2 * 0.015f);
@@ -155,18 +156,16 @@ public class TileEtherealShardRender extends TileEntitySpecialRenderer {
Math.min(iiud, 10) / 10.0f);
GL11.glPopMatrix();
}
GL11.glDisable(3042);
GL11.glAlphaFunc(516, 0.1f);
} catch (Exception e) {
System.out.println(e.getMessage());
} finally {
GL11.glDisable(GL11.GL_BLEND);
GL11.glAlphaFunc(GL11.GL_GREATER, 0.1f);
} catch (Exception ignored) {} finally {
GL11.glPopMatrix();
}
}
private void drawCrystal(final int ori, final float x, final float y, final float z, final float a1, final float a2,
final Random rand, final int color, final float size) {
final EntityPlayer p = (EntityPlayer) Minecraft.getMinecraft().thePlayer;
final EntityPlayer p = Minecraft.getMinecraft().thePlayer;
final float shade = MathHelper.sin((p.ticksExisted + rand.nextInt(10)) / (5.0f + rand.nextFloat())) * 0.075f
+ 0.925f;
final Color c = new Color(color);
@@ -174,10 +173,10 @@ public class TileEtherealShardRender extends TileEntitySpecialRenderer {
final float g = c.getGreen() / 220.0f;
final float b = c.getBlue() / 220.0f;
GL11.glPushMatrix();
GL11.glEnable(2977);
GL11.glEnable(3042);
GL11.glEnable(32826);
GL11.glBlendFunc(770, 771);
GL11.glEnable(GL11.GL_NORMALIZE);
GL11.glEnable(GL11.GL_BLEND);
GL11.glEnable(GL12.GL_RESCALE_NORMAL);
GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA);
GL11.glTranslatef(x + 0.5f, (float) (y - 0.15f + 0.10000000149011612 * Math.sin(Math.toRadians(a1))), z + 0.5f);
GL11.glRotatef(a1, 0.0f, 1.0f, 0.0f);
GL11.glRotatef(a2, 1.0f, 0.0f, 0.0f);
@@ -188,12 +187,12 @@ public class TileEtherealShardRender extends TileEntitySpecialRenderer {
final int var19 = (int) (210.0f * shade);
final int var20 = var19 % 65536;
final int var21 = var19 / 65536;
OpenGlHelper.setLightmapTextureCoords(OpenGlHelper.lightmapTexUnit, var20 / 1.0f, var21 / 1.0f);
OpenGlHelper.setLightmapTextureCoords(OpenGlHelper.lightmapTexUnit, var20, var21);
GL11.glColor4f(r, g, b, 1.0f);
this.model.render();
GL11.glScalef(1.0f, 1.0f, 1.0f);
GL11.glDisable(32826);
GL11.glDisable(3042);
GL11.glDisable(GL12.GL_RESCALE_NORMAL);
GL11.glDisable(GL11.GL_BLEND);
GL11.glColor4f(1.0f, 1.0f, 1.0f, 1.0f);
GL11.glPopMatrix();
}
@@ -10,19 +10,20 @@ import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.MathHelper;
import org.lwjgl.opengl.GL11;
import org.lwjgl.opengl.GL12;
import com.kentington.thaumichorizons.client.renderer.model.ModelInspiratron;
import com.kentington.thaumichorizons.common.tiles.TileInspiratron;
import thaumcraft.client.lib.UtilsFX;
import thaumcraft.client.renderers.models.ModelBrain;
import thaumcraft.client.renderers.models.ModelJar;
import com.kentington.thaumichorizons.client.renderer.model.ModelInspiratron;
import com.kentington.thaumichorizons.common.tiles.TileInspiratron;
public class TileInspiratronRender extends TileEntitySpecialRenderer {
private ModelJar model;
private ModelBrain brain;
private ModelInspiratron inspiratron;
private final ModelJar model;
private final ModelBrain brain;
private final ModelInspiratron inspiratron;
static String tx1;
public TileInspiratronRender() {
@@ -34,17 +35,17 @@ public class TileInspiratronRender extends TileEntitySpecialRenderer {
public void renderTileEntityAt(final TileEntity tile, final double x, final double y, final double z,
final float f) {
GL11.glPushMatrix();
GL11.glDisable(2884);
GL11.glDisable(GL11.GL_CULL_FACE);
GL11.glTranslatef((float) x + 0.5f, (float) y, (float) z + 0.5f);
GL11.glRotatef(180.0f, 1.0f, 0.0f, 0.0f);
GL11.glColor4f(1.0f, 1.0f, 1.0f, 1.0f);
GL11.glPushMatrix();
GL11.glTranslatef(0.0f, -0.125f, 0.0f);
this.renderBrain((TileInspiratron) tile, x, y, z, f);
GL11.glEnable(32826);
GL11.glEnable(GL12.GL_RESCALE_NORMAL);
GL11.glPopMatrix();
GL11.glEnable(3042);
GL11.glBlendFunc(770, 771);
GL11.glEnable(GL11.GL_BLEND);
GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA);
GL11.glTranslatef(0.0f, -1.5f, 0.0f);
UtilsFX.bindTexture("thaumichorizons", TileInspiratronRender.tx1);
this.inspiratron.render(null, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0625f);
@@ -57,9 +58,9 @@ public class TileInspiratronRender extends TileEntitySpecialRenderer {
GL11.glTranslatef(0.0f, -0.8f + bob, 0.0f);
if (te != null) {
float f2;
for (f2 = te.rota - te.rotb; f2 < -3.141593f; f2 += 6.283185f) {}
for (f2 = te.rota - te.rotb; f2 < -(float) Math.PI; f2 += ((float) Math.PI * 2F)) {}
final float f3 = te.rotb + f2 * f;
GL11.glRotatef(f3 * 180.0f / 3.141593f, 0.0f, 1.0f, 0.0f);
GL11.glRotatef(f3 * 180.0f / (float) Math.PI, 0.0f, 1.0f, 0.0f);
}
GL11.glRotatef(-90.0f, 0.0f, 1.0f, 0.0f);
UtilsFX.bindTexture("thaumichorizons", "textures/models/brain.png");
Loaded 100 of 574 files, more files were not shown because too many files have changed in this diff. Show more