mirror of
https://github.com/MineLittlePony/MineLittlePony.git
synced 2025-02-13 08:14:23 +01:00
This is no longer applicable
This commit is contained in:
parent
c56c99171a
commit
d5bcd31145
4 changed files with 6 additions and 54 deletions
|
@ -1,24 +0,0 @@
|
||||||
package com.minelittlepony.client.mixin;
|
|
||||||
|
|
||||||
import org.spongepowered.asm.mixin.Mixin;
|
|
||||||
import org.spongepowered.asm.mixin.injection.At;
|
|
||||||
import org.spongepowered.asm.mixin.injection.Inject;
|
|
||||||
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
|
|
||||||
|
|
||||||
import com.minelittlepony.client.render.LevitatingItemRenderer;
|
|
||||||
|
|
||||||
import com.mojang.blaze3d.platform.GlStateManager;
|
|
||||||
|
|
||||||
@Mixin(GlStateManager.class)
|
|
||||||
public abstract class MixinGlStateManager {
|
|
||||||
|
|
||||||
@Inject(method = "setProfile("
|
|
||||||
+ "Lcom/mojang/blaze3d/platform/GlStateManager$RenderMode;)V",
|
|
||||||
at = @At("HEAD"),
|
|
||||||
cancellable = true)
|
|
||||||
private static void enableBlendProfile(GlStateManager.RenderMode profile, CallbackInfo info) {
|
|
||||||
if (profile == GlStateManager.RenderMode.PLAYER_SKIN && LevitatingItemRenderer.enableItemGlowRenderProfile()) {
|
|
||||||
info.cancel();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -3,9 +3,7 @@ package com.minelittlepony.client.mixin;
|
||||||
import com.minelittlepony.client.render.LevitatingItemRenderer;
|
import com.minelittlepony.client.render.LevitatingItemRenderer;
|
||||||
|
|
||||||
import net.minecraft.client.render.item.ItemRenderer;
|
import net.minecraft.client.render.item.ItemRenderer;
|
||||||
import net.minecraft.client.render.model.BakedModel;
|
|
||||||
import net.minecraft.client.texture.TextureManager;
|
import net.minecraft.client.texture.TextureManager;
|
||||||
import net.minecraft.item.ItemStack;
|
|
||||||
import net.minecraft.resource.SynchronousResourceReloadListener;
|
import net.minecraft.resource.SynchronousResourceReloadListener;
|
||||||
|
|
||||||
import org.spongepowered.asm.mixin.Mixin;
|
import org.spongepowered.asm.mixin.Mixin;
|
||||||
|
@ -17,14 +15,6 @@ import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
|
||||||
@Mixin(ItemRenderer.class)
|
@Mixin(ItemRenderer.class)
|
||||||
public abstract class MixinItemRenderer implements SynchronousResourceReloadListener {
|
public abstract class MixinItemRenderer implements SynchronousResourceReloadListener {
|
||||||
|
|
||||||
@Inject(method = "renderItemAndGlow("
|
|
||||||
+ "Lnet/minecraft/item/ItemStack;"
|
|
||||||
+ "Lnet/minecraft/client/render/model/BakedModel;)V",
|
|
||||||
at = @At("HEAD"))
|
|
||||||
private void onRenderItem(ItemStack stack, BakedModel model, CallbackInfo info) {
|
|
||||||
LevitatingItemRenderer.enableItemGlowRenderProfile();
|
|
||||||
}
|
|
||||||
|
|
||||||
@Inject(method = "Lnet/minecraft/client/render/item/ItemRenderer;renderGlint("
|
@Inject(method = "Lnet/minecraft/client/render/item/ItemRenderer;renderGlint("
|
||||||
+ "Lnet/minecraft/client/texture/TextureManager;"
|
+ "Lnet/minecraft/client/texture/TextureManager;"
|
||||||
+ "Ljava/lang/Runnable;I)V",
|
+ "Ljava/lang/Runnable;I)V",
|
||||||
|
|
|
@ -5,8 +5,6 @@ import org.lwjgl.opengl.GL14;
|
||||||
import com.minelittlepony.client.MineLittlePony;
|
import com.minelittlepony.client.MineLittlePony;
|
||||||
import com.minelittlepony.pony.IPony;
|
import com.minelittlepony.pony.IPony;
|
||||||
import com.minelittlepony.util.math.Color;
|
import com.minelittlepony.util.math.Color;
|
||||||
import com.mojang.blaze3d.platform.GlStateManager.DestFactor;
|
|
||||||
import com.mojang.blaze3d.platform.GlStateManager.SourceFactor;
|
|
||||||
|
|
||||||
import javax.annotation.Nullable;
|
import javax.annotation.Nullable;
|
||||||
|
|
||||||
|
@ -31,15 +29,6 @@ public class LevitatingItemRenderer {
|
||||||
|
|
||||||
private static boolean usingTransparency;
|
private static boolean usingTransparency;
|
||||||
|
|
||||||
public static boolean enableItemGlowRenderProfile() {
|
|
||||||
if (usesTransparency()) {
|
|
||||||
enableBlend();
|
|
||||||
blendFuncSeparate(SourceFactor.CONSTANT_COLOR, DestFactor.ONE, SourceFactor.ONE, DestFactor.ZERO);
|
|
||||||
}
|
|
||||||
|
|
||||||
return usesTransparency();
|
|
||||||
}
|
|
||||||
|
|
||||||
public static boolean usesTransparency() {
|
public static boolean usesTransparency() {
|
||||||
return usingTransparency;
|
return usingTransparency;
|
||||||
}
|
}
|
||||||
|
@ -48,14 +37,15 @@ public class LevitatingItemRenderer {
|
||||||
* Renders a magical overlay over an item in third person.
|
* Renders a magical overlay over an item in third person.
|
||||||
*/
|
*/
|
||||||
public void renderItemGlow(LivingEntity entity, ItemStack drop, ModelTransformation.Type transform, Arm hand, int glowColor, MatrixStack stack, VertexConsumerProvider renderContext) {
|
public void renderItemGlow(LivingEntity entity, ItemStack drop, ModelTransformation.Type transform, Arm hand, int glowColor, MatrixStack stack, VertexConsumerProvider renderContext) {
|
||||||
|
|
||||||
|
// TODO: mixin into RenderLayer.getItemLayer(itemstack) to enable transparency
|
||||||
|
usingTransparency = true;
|
||||||
|
|
||||||
stack.push();
|
stack.push();
|
||||||
disableLighting();
|
|
||||||
setColor(glowColor);
|
setColor(glowColor);
|
||||||
|
|
||||||
ItemRenderer renderItem = MinecraftClient.getInstance().getItemRenderer();
|
ItemRenderer renderItem = MinecraftClient.getInstance().getItemRenderer();
|
||||||
|
|
||||||
usingTransparency = true;
|
|
||||||
|
|
||||||
stack.scale(1.1F, 1.1F, 1.1F);
|
stack.scale(1.1F, 1.1F, 1.1F);
|
||||||
|
|
||||||
stack.translate(0.01F, 0.01F, 0.01F);
|
stack.translate(0.01F, 0.01F, 0.01F);
|
||||||
|
@ -63,12 +53,11 @@ public class LevitatingItemRenderer {
|
||||||
stack.translate(-0.02F, -0.02F, -0.02F);
|
stack.translate(-0.02F, -0.02F, -0.02F);
|
||||||
renderItem.method_23177(entity, drop, transform, hand == Arm.LEFT, stack, renderContext, entity.world, 0x0F00F0, OverlayTexture.DEFAULT_UV);
|
renderItem.method_23177(entity, drop, transform, hand == Arm.LEFT, stack, renderContext, entity.world, 0x0F00F0, OverlayTexture.DEFAULT_UV);
|
||||||
|
|
||||||
usingTransparency = false;
|
|
||||||
unsetColor();
|
unsetColor();
|
||||||
enableLighting();
|
|
||||||
stack.pop();
|
stack.pop();
|
||||||
|
|
||||||
// I hate rendering
|
usingTransparency = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void setColor(int glowColor) {
|
private void setColor(int glowColor) {
|
||||||
|
@ -118,8 +107,6 @@ public class LevitatingItemRenderer {
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix.pop();
|
matrix.pop();
|
||||||
|
|
||||||
// I hate rendering
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -10,7 +10,6 @@
|
||||||
"MixinDefaultPlayerSkin",
|
"MixinDefaultPlayerSkin",
|
||||||
"MixinEntityRenderDispatcher",
|
"MixinEntityRenderDispatcher",
|
||||||
"MixinFirstPersonRenderer",
|
"MixinFirstPersonRenderer",
|
||||||
"MixinGlStateManager",
|
|
||||||
"MixinItemRenderer",
|
"MixinItemRenderer",
|
||||||
"MixinClientPlayerEntity",
|
"MixinClientPlayerEntity",
|
||||||
"MixinPlayerMoveC2SPacket_Both",
|
"MixinPlayerMoveC2SPacket_Both",
|
||||||
|
|
Loading…
Reference in a new issue