29 lines
1.1 KiB
Java
29 lines
1.1 KiB
Java
package com.r3944realms.leashedplayer.mixin;
|
|
|
|
import net.minecraft.client.Minecraft;
|
|
import net.minecraft.client.Options;
|
|
import net.minecraft.client.player.LocalPlayer;
|
|
import net.minecraft.world.entity.Entity;
|
|
import net.minecraft.world.entity.EntityType;
|
|
import org.spongepowered.asm.mixin.Final;
|
|
import org.spongepowered.asm.mixin.Mixin;
|
|
import org.spongepowered.asm.mixin.Shadow;
|
|
import org.spongepowered.asm.mixin.injection.At;
|
|
import org.spongepowered.asm.mixin.injection.Inject;
|
|
import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable;
|
|
|
|
import javax.annotation.Nullable;
|
|
|
|
@Mixin(Minecraft.class)
|
|
public class MixinMinecraft {
|
|
@Shadow @Nullable public LocalPlayer player;
|
|
|
|
@Shadow @Final public Options options;
|
|
|
|
@Inject(method = "shouldEntityAppearGlowing", at = @At("HEAD"), cancellable = true)
|
|
private void shouldEntityAppearGlowing(Entity entity, CallbackInfoReturnable<Boolean> cir) {
|
|
cir.setReturnValue(entity.isCurrentlyGlowing()
|
|
|| player != null && this.player.isSpectator() && options.keySpectatorOutlines.isDown() && entity.getType() == EntityType.PLAYER);
|
|
}
|
|
}
|