Replace no name tag CT with mixin magic

Fix nametags of sneaking players being displayed even though nametags are disabled
This commit is contained in:
johni0702
2015-08-05 17:09:54 +02:00
parent 16a86066f2
commit 78e4c36d54
7 changed files with 47 additions and 70 deletions

View File

@@ -0,0 +1,22 @@
package eu.crushedpixel.replaymod.mixin;
import eu.crushedpixel.replaymod.video.EntityRendererHandler;
import net.minecraft.client.Minecraft;
import net.minecraft.client.renderer.entity.Render;
import net.minecraft.entity.Entity;
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.CallbackInfoReturnable;
@Mixin(Render.class)
public abstract class MixinRender {
@Inject(method = "canRenderName", at = @At("HEAD"), cancellable = true)
private void areAllNamesHidden(Entity entity, CallbackInfoReturnable<Boolean> ci) {
EntityRendererHandler handler = ((EntityRendererHandler.IEntityRenderer) Minecraft.getMinecraft().entityRenderer).getHandler();
if (handler != null && handler.getOptions().isHideNameTags()) {
ci.setReturnValue(false);
ci.cancel();
}
}
}