From 5c8ae483654291cb4e5077e47e0d5854c2efd2a3 Mon Sep 17 00:00:00 2001 From: Rosa Date: Thu, 12 Mar 2026 18:01:50 -0400 Subject: init --- .../simplerenamecommand/SimpleRenameCommand.java | 42 ++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 src/main/java/net/girlonthe/simplerenamecommand/SimpleRenameCommand.java (limited to 'src/main/java/net') diff --git a/src/main/java/net/girlonthe/simplerenamecommand/SimpleRenameCommand.java b/src/main/java/net/girlonthe/simplerenamecommand/SimpleRenameCommand.java new file mode 100644 index 0000000..780b9f2 --- /dev/null +++ b/src/main/java/net/girlonthe/simplerenamecommand/SimpleRenameCommand.java @@ -0,0 +1,42 @@ +package net.girlonthe.simplerenamecommand; + +import com.mojang.brigadier.Command; +import com.mojang.brigadier.builder.LiteralArgumentBuilder; +import com.mojang.brigadier.builder.RequiredArgumentBuilder; +import net.fabricmc.api.ModInitializer; +import net.fabricmc.fabric.api.command.v2.CommandRegistrationCallback; +import net.minecraft.commands.arguments.ComponentArgument; +import net.minecraft.core.component.DataComponentMap; +import net.minecraft.core.component.DataComponentType; +import net.minecraft.core.component.DataComponents; +import net.minecraft.network.chat.ChatType; +import net.minecraft.network.chat.Component; +import net.minecraft.network.chat.OutgoingChatMessage; +import net.minecraft.network.chat.PlayerChatMessage; +import net.minecraft.network.chat.ChatType.Bound; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.world.item.ItemStack; +import net.minecraft.commands.CommandSourceStack; +import net.minecraft.commands.Commands; + +public class SimpleRenameCommand implements ModInitializer { + @Override + public void onInitialize() { + CommandRegistrationCallback.EVENT.register((dispatcher, registryAccess, environment) -> { + dispatcher.register( + Commands.literal("renameitem") + .then(Commands.argument("itemName", ComponentArgument.textComponent(registryAccess)) + .executes(ctx -> { + ServerPlayer src = ctx.getSource().getPlayerOrException(); + ItemStack stack = src.getMainHandItem(); + if (stack != null) { + stack.set(DataComponents.CUSTOM_NAME, ctx.getArgument("itemName", Component.class)); + } else { + src.sendChatMessage(OutgoingChatMessage.create(PlayerChatMessage.system("slur")), true, ChatType.bind(ChatType.CHAT, ctx.getSource())); + } + + return Command.SINGLE_SUCCESS; + }))); + }); + } +} -- cgit v1.3.1