From 021967c19bd89ae3c39233fda40232cafbb1e608 Mon Sep 17 00:00:00 2001 From: RettichLP Date: Fri, 29 May 2026 22:36:10 +0200 Subject: [PATCH] Remove custom name handling logic from `EntityMixin` --- .../rettichlp/ucutils/mixin/EntityMixin.java | 76 ------------------- 1 file changed, 76 deletions(-) diff --git a/src/main/java/de/rettichlp/ucutils/mixin/EntityMixin.java b/src/main/java/de/rettichlp/ucutils/mixin/EntityMixin.java index 3944e797..9f508ead 100644 --- a/src/main/java/de/rettichlp/ucutils/mixin/EntityMixin.java +++ b/src/main/java/de/rettichlp/ucutils/mixin/EntityMixin.java @@ -1,38 +1,21 @@ package de.rettichlp.ucutils.mixin; -import de.rettichlp.ucutils.common.models.Faction; -import de.rettichlp.ucutils.common.models.WantedEntry; import net.minecraft.client.network.ClientPlayerEntity; import net.minecraft.entity.Entity; -import net.minecraft.entity.ItemEntity; import net.minecraft.entity.vehicle.MinecartEntity; -import net.minecraft.item.ItemStack; -import net.minecraft.text.MutableText; -import net.minecraft.text.Text; -import net.minecraft.util.Formatting; import net.minecraft.world.entity.UniquelyIdentifiable; import org.jetbrains.annotations.NotNull; import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.Unique; import org.spongepowered.asm.mixin.injection.At; import org.spongepowered.asm.mixin.injection.Inject; import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; -import java.util.Optional; - import static de.rettichlp.ucutils.UCUtils.commandService; import static de.rettichlp.ucutils.UCUtils.configuration; -import static de.rettichlp.ucutils.UCUtils.nameTagService; import static de.rettichlp.ucutils.UCUtils.player; import static de.rettichlp.ucutils.UCUtils.storage; import static de.rettichlp.ucutils.UCUtils.utilService; -import static de.rettichlp.ucutils.common.models.Color.WHITE; -import static net.minecraft.item.Items.SKELETON_SKULL; -import static net.minecraft.item.Items.WITHER_SKELETON_SKULL; -import static net.minecraft.text.Text.empty; -import static net.minecraft.text.Text.literal; -import static net.minecraft.util.Formatting.GRAY; @Mixin(Entity.class) public abstract class EntityMixin { @@ -78,63 +61,4 @@ public abstract class EntityMixin { storage.setMinecartEntityToHighlight(minecartEntity); } } - - @Inject(method = "getCustomName", at = @At("RETURN"), cancellable = true) - private void ucutils$getDisplayNameReturn(@NotNull CallbackInfoReturnable cir) { - if (!storage.isUnicaCity()) { - return; - } - - Entity self = (Entity) (Object) this; - if (!(self instanceof ItemEntity itemEntity) || !itemEntity.hasCustomName()) { - return; - } - - ItemStack itemStack = itemEntity.getStack(); - Text returnValue = cir.getReturnValue(); - if (returnValue == null || (!itemStack.isOf(SKELETON_SKULL) && !itemStack.isOf(WITHER_SKELETON_SKULL))) { - return; - } - - String displayNameString = returnValue.getString(); - - // extract player name (✟RettichLP -> RettichLP) - String playerName = displayNameString.substring(1); - - // enrich player name with faction information (RettichLP -> RettichLP ⌜✚⌟) - MutableText enrichedDisplayName = getEnrichedDisplayName(playerName); - - cir.setReturnValue(empty() - .append(literal("✟").copy().formatted(GRAY)) - .append(enrichedDisplayName)); - } - - @Unique - private MutableText getEnrichedDisplayName(String targetName) { - Faction targetFaction = storage.getCachedFaction(targetName); - - Text newTargetDisplayNamePrefix = empty(); - Text newTargetDisplayName = literal(targetName); - Text newTargetDisplayNameSuffix = targetFaction.getNameTagSuffix(); - Formatting newTargetDisplayNameColor; - - // highlight factions - newTargetDisplayNameColor = WHITE.getFormatting(); - - // wanted - Optional optionalTargetWantedEntry = storage.getWantedEntries().stream() - .filter(wantedEntry -> wantedEntry.getPlayerName().equals(targetName)) - .findAny(); - - if (optionalTargetWantedEntry.isPresent()) { - newTargetDisplayNameColor = nameTagService.getWantedPointColor(optionalTargetWantedEntry.get().getWantedPointAmount()); - } - - return empty() - .append(newTargetDisplayNamePrefix) - .append(" ") - .append(newTargetDisplayName.copy().formatted(newTargetDisplayNameColor)) - .append(" ") - .append(newTargetDisplayNameSuffix); - } }