package com.replaymod.replay.mixin; import com.replaymod.replay.ReplayHandler; import com.replaymod.replay.ReplayModReplay; import net.minecraft.client.render.item.ItemRenderer; import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.injection.At; import org.spongepowered.asm.mixin.injection.Redirect; //#if MC>=11400 import net.minecraft.util.SystemUtil; //#else //$$ import net.minecraft.client.Minecraft; //#endif @Mixin(ItemRenderer.class) public class MixinRenderItem { //#if MC>=11400 //#if MC>=11400 @Redirect(method = "renderGlint", at = @At(value = "INVOKE", target = "Lnet/minecraft/util/SystemUtil;getMeasuringTimeMs()J")) //#else //$$ @Redirect(method = "renderEffect", at = @At(value = "INVOKE", target = "Lnet/minecraft/util/Util;milliTime()J")) //#endif private static long getEnchantmentTime() { //#else //$$ @Redirect(method = "renderEffect", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/Minecraft;getSystemTime()J")) //$$ private long getEnchantmentTime() { //#endif ReplayHandler replayHandler = ReplayModReplay.instance.getReplayHandler(); if (replayHandler != null) { return replayHandler.getReplaySender().currentTimeStamp(); } //#if MC>=11400 return SystemUtil.getMeasuringTimeMs(); //#else //$$ return Minecraft.getSystemTime(); //#endif } }