blob: db36136e083b5ceb773710987daafcb0d67b3a69 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
|
package com.arslaancodes.arslaansmagichax.commands;
import com.mojang.brigadier.CommandDispatcher;
import com.mojang.brigadier.arguments.IntegerArgumentType;
import com.mojang.brigadier.arguments.StringArgumentType;
import com.mojang.brigadier.context.CommandContext;
import com.mojang.brigadier.exceptions.CommandSyntaxException;
import net.fabricmc.fabric.api.client.command.v2.ClientCommandManager;
import net.fabricmc.fabric.api.client.command.v2.FabricClientCommandSource;
import net.minecraft.client.Minecraft;
import net.minecraft.commands.CommandBuildContext;
import net.minecraft.core.registries.BuiltInRegistries;
import net.minecraft.network.chat.Component;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.item.Item;
import net.minecraft.world.item.ItemStack;
public class HackGive {
public static void register(CommandDispatcher<FabricClientCommandSource> dispatcher, CommandBuildContext access) {
dispatcher.register(ClientCommandManager.literal("hackgive")
.then(ClientCommandManager.argument("item", StringArgumentType.string())
.then(ClientCommandManager.argument("amount", IntegerArgumentType.integer(1))
.executes(HackGive::run)
)
)
);
}
private static int run(CommandContext<FabricClientCommandSource> context) throws CommandSyntaxException {
Minecraft client = Minecraft.getInstance();
if (client.level == null || client.player == null) return 0;
String itemId = StringArgumentType.getString(context, "item");
int amount = IntegerArgumentType.getInteger(context, "amount");
Item item = BuiltInRegistries.ITEM.getValue(ResourceLocation.parse(itemId));
if (item == null) {
context.getSource().sendError(Component.literal("Unknown item: " + itemId));
return 0;
}
ItemStack stack = new ItemStack(item, amount);
client.player.getInventory().add(stack);
return 1;
}
}
|