Skip to content

Commit 539b205

Browse files
committed
Add support for Avaritia animations
1 parent 35fc330 commit 539b205

5 files changed

Lines changed: 60 additions & 4 deletions

File tree

build.gradle

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ apply plugin: "org.spongepowered.mixin"
1818

1919
repositories {
2020
maven { url "http://repo.spongepowered.org/maven" }
21+
maven { url "http://chickenbones.net/maven/" }
2122
ivy {
2223
url "https://google.com/404"
2324
ivyPattern("https://google.com/404") // Workaround for https://github.com/gradle/gradle/issues/4107
@@ -26,7 +27,7 @@ repositories {
2627
}
2728

2829
dependencies {
29-
implementation("org.spongepowered:mixin:0.7.8-SNAPSHOT") {
30+
implementation("org.spongepowered:mixin:0.7.10-SNAPSHOT") {
3031
exclude module: "asm-commons"
3132
exclude module: "asm-tree"
3233
exclude module: "launchwrapper"
@@ -39,6 +40,9 @@ dependencies {
3940
compileOnly "2530:225:OpenBlocks-1.12.2-1.7.6@jar"
4041
compileOnly "2525:230:OpenModsLib-1.12.2-0.11.5@jar"
4142
compileOnly "2568:0:TConstruct-1.12.2-2.10.1.84@jar"
43+
compileOnly "2568:0:TConstruct-1.12.2-2.10.1.84@jar"
44+
compileOnly "2511:625:Avaritia-1.12-3.2.0.13-universal@jar"
45+
compileOnly "codechicken:CodeChickenLib:1.12.2-3.1.9.344:deobf"
4246
}
4347

4448
def travisBuildNumber = System.getenv("TRAVIS_BUILD_NUMBER")
Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
1-
#Thu Jun 07 02:29:56 EDT 2018
21
distributionBase=GRADLE_USER_HOME
32
distributionPath=wrapper/dists
3+
distributionUrl=https\://services.gradle.org/distributions/gradle-4.8-bin.zip
44
zipStoreBase=GRADLE_USER_HOME
55
zipStorePath=wrapper/dists
6-
distributionUrl=https\://services.gradle.org/distributions/gradle-4.8-all.zip
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
package org.dimdev.vanillafix.textures.modsupport.mixins.client;
2+
3+
import morph.avaritia.api.IHaloRenderItem;
4+
import morph.avaritia.client.render.item.HaloRenderItem;
5+
import net.minecraft.client.renderer.block.model.ItemCameraTransforms;
6+
import net.minecraft.item.ItemStack;
7+
import org.dimdev.vanillafix.textures.IPatchedTextureAtlasSprite;
8+
import org.spongepowered.asm.mixin.Mixin;
9+
import org.spongepowered.asm.mixin.Pseudo;
10+
import org.spongepowered.asm.mixin.injection.At;
11+
import org.spongepowered.asm.mixin.injection.Inject;
12+
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
13+
14+
@Pseudo
15+
@Mixin(HaloRenderItem.class)
16+
public class MixinHaloRenderItem {
17+
@Inject(method = "renderItem", at = @At("HEAD"), remap = false)
18+
private void onRenderItem(ItemStack stack, ItemCameraTransforms.TransformType transformType, CallbackInfo ci) {
19+
if (stack.getItem() instanceof IHaloRenderItem) {
20+
((IPatchedTextureAtlasSprite) ((IHaloRenderItem) stack.getItem()).getHaloTexture(stack)).markNeedsAnimationUpdate();
21+
}
22+
}
23+
}
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
package org.dimdev.vanillafix.textures.modsupport.mixins.client;
2+
3+
import morph.avaritia.client.render.item.WrappedItemRenderer;
4+
import net.minecraft.client.renderer.block.model.BakedQuad;
5+
import net.minecraft.client.renderer.block.model.IBakedModel;
6+
import net.minecraft.item.ItemStack;
7+
import org.dimdev.vanillafix.textures.IPatchedTextureAtlasSprite;
8+
import org.spongepowered.asm.mixin.Mixin;
9+
import org.spongepowered.asm.mixin.Pseudo;
10+
import org.spongepowered.asm.mixin.injection.At;
11+
import org.spongepowered.asm.mixin.injection.Inject;
12+
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
13+
14+
import java.util.List;
15+
16+
@Pseudo
17+
@Mixin(WrappedItemRenderer.class)
18+
public class MixinWrappedItemRenderer {
19+
@Inject(method = "renderModel(Lnet/minecraft/client/renderer/block/model/IBakedModel;Lnet/minecraft/item/ItemStack;F)V", at = @At("HEAD"), remap = false)
20+
private static void onRenderModel(IBakedModel model, ItemStack stack, float alphaOverride, CallbackInfo ci) {
21+
List<BakedQuad> quads = model.getQuads(null, null, 0);
22+
for (BakedQuad quad : quads) {
23+
if (quad.getSprite() != null) {
24+
((IPatchedTextureAtlasSprite) quad.getSprite()).markNeedsAnimationUpdate();
25+
}
26+
}
27+
}
28+
}

src/main/resources/mixins.vanillafix.textures.modsupport.json

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,9 @@
1111
"client.MixinMagicStitchingSprite",
1212
"client.MixinTileEntityTankRenderer",
1313
"client.MixinGuiUtil",
14-
"client.MixinRenderUtil"
14+
"client.MixinRenderUtil",
15+
"client.MixinHaloRenderItem",
16+
"client.MixinWrappedItemRenderer"
1517
],
1618
"injectors": {
1719
"maxShiftBy": 10

0 commit comments

Comments
 (0)