This repository has been archived on 2023-11-26. You can view files and clone it, but cannot push or open issues or pull requests.
ScriptCraft/src/main/java/com/thebrokenrail/scriptcraft/bridge/ItemStackBridges.java

38 lines
1.7 KiB
Java

package com.thebrokenrail.scriptcraft.bridge;
import com.thebrokenrail.scriptcraft.util.Util;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.CompoundTag;
import net.minecraft.util.Identifier;
import net.minecraft.util.registry.Registry;
class ItemStackBridges {
static void register() {
Bridges.addBridge("ItemStack.create", args -> new ItemStack(Registry.ITEM.get(new Identifier((String) args[0])), ((Double) args[1]).intValue()));
Bridges.addBridge("ItemStack.getItem", args -> Registry.ITEM.getId(((ItemStack) args[0]).getItem()).toString());
Bridges.addBridge("ItemStack.setCount", args -> {
((ItemStack) args[0]).setCount((int) Util.toDouble(args[1], 0));
return null;
});
Bridges.addBridge("ItemStack.getCount", args -> (double) ((ItemStack) args[0]).getCount());
Bridges.addBridge("ItemStack.setDamage", args -> {
((ItemStack) args[0]).setDamage((int) Util.toDouble(args[1], 0));
return null;
});
Bridges.addBridge("ItemStack.getDamage", args -> (double) ((ItemStack) args[0]).getDamage());
Bridges.addBridge("ItemStack.isDamageable", args -> ((ItemStack) args[0]).isDamageable());
Bridges.addBridge("ItemStack.getTag", args -> ((ItemStack) args[0]).getTag());
Bridges.addBridge("ItemStack.setTag", args -> {
((ItemStack) args[0]).setTag((CompoundTag) args[1]);
return null;
});
Bridges.addBridge("ItemStack.toTag", args -> ((ItemStack) args[0]).toTag(new CompoundTag()));
Bridges.addBridge("ItemStack.fromTag", args -> ItemStack.fromTag((CompoundTag) args[1]));
}
}