package net.inyourwalls.customlevelcolour.mixin; import net.inyourwalls.customlevelcolour.CustomLevelColour; import net.minecraft.client.gui.contextualbar.ContextualBar; import net.minecraft.util.ARGB; import org.spongepowered.asm.mixin.injection.At; import org.spongepowered.asm.mixin.injection.ModifyArg; import org.spongepowered.asm.mixin.Mixin; @Mixin(ContextualBar.class) public interface ContextualBarMixin { @ModifyArg( at = @At( value = "INVOKE", target = "Lnet/minecraft/client/gui/GuiGraphicsExtractor;text(Lnet/minecraft/client/gui/Font;Lnet/minecraft/network/chat/Component;IIIZ)V" ), method = "extractExperienceLevel", index = 4, require = 4 ) private static int modifyExperienceOutline(int originalColour) { return ARGB.opaque(CustomLevelColour.getConfig().outlineColour); } @ModifyArg( at = @At( value = "INVOKE", target = "Lnet/minecraft/client/gui/GuiGraphicsExtractor;text(Lnet/minecraft/client/gui/Font;Lnet/minecraft/network/chat/Component;IIIZ)V", ordinal = 4 ), method = "extractExperienceLevel", index = 4 ) private static int modifyExperienceColour(int originalColour) { return ARGB.opaque(CustomLevelColour.getConfig().textColour); } }