ChatPlus/src/main/java/cn/revaria/chatplus/mixin/compat/DynmapMixin.java
CPTProgrammer d5f37d5e07 Rewrite entire project for v1.0.0
- Remove legacy code and replace with new implementation
- Update version to 1.0.0
- Adjust build configurations and dependencies.
2025-04-21 04:31:40 +08:00

42 lines
1.7 KiB
Java

package cn.revaria.chatplus.mixin.compat;
import com.llamalad7.mixinextras.sugar.Local;
import com.llamalad7.mixinextras.sugar.ref.LocalRef;
import net.minecraft.server.network.ServerPlayerEntity;
import net.minecraft.text.Text;
import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.Pseudo;
import org.spongepowered.asm.mixin.injection.At;
import org.spongepowered.asm.mixin.injection.Inject;
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
import static cn.revaria.chatplus.util.TextStyleFormatter.applyStyle;
@Pseudo
@Mixin(targets =
#if MC_VER <= MC_1_19
"org.dynmap.fabric_1_19.DynmapPlugin$ChatHandler"
#elif MC_VER <= MC_1_19_1
"org.dynmap.fabric_1_19_1.DynmapPlugin$ChatHandler"
#elif MC_VER <= MC_1_19_3
{"org.dynmap.fabric_1_19_3.DynmapPlugin$ChatHandler", "org.dynmap.fabric_1_19_4.DynmapPlugin$ChatHandler"}
#elif MC_VER <= MC_1_20
{"org.dynmap.fabric_1_20.DynmapPlugin$ChatHandler", "org.dynmap.fabric_1_20_2.DynmapPlugin$ChatHandler"}
#elif MC_VER <= MC_1_20_3
{"org.dynmap.fabric_1_20_4.DynmapPlugin$ChatHandler", "org.dynmap.fabric_1_20_6.DynmapPlugin$ChatHandler"}
#elif MC_VER <= MC_1_21
{
"org.dynmap.fabric_1_21.DynmapPlugin$ChatHandler",
"org.dynmap.fabric_1_21_1.DynmapPlugin$ChatHandler",
"org.dynmap.fabric_1_21_3.DynmapPlugin$ChatHandler",
"org.dynmap.fabric_1_21_5.DynmapPlugin$ChatHandler"
}
#endif
)
public abstract class DynmapMixin {
@Inject(method = "handleChat", at = @At("HEAD"), remap = false)
private void modifyMessage(ServerPlayerEntity player, String message, CallbackInfo ci, @Local(argsOnly = true) LocalRef<String> messageRef) {
messageRef.set(applyStyle(Text.of(message), player).getString());
}
}