2020-04-28 00:15:24 +00:00
|
|
|
package com.thebrokenrail.scriptcraft.api.bridge;
|
|
|
|
|
|
|
|
import com.thebrokenrail.scriptcraft.core.ScriptCraftCore;
|
|
|
|
import com.thebrokenrail.scriptcraft.core.ValueUtil;
|
|
|
|
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() {
|
|
|
|
ScriptCraftCore.addBridge("ItemStack.create", args -> new ItemStack(Registry.ITEM.get(new Identifier((String) args[0])), ((Double) args[1]).intValue()));
|
|
|
|
|
|
|
|
ScriptCraftCore.addBridge("ItemStack.getItem", args -> Registry.ITEM.getId(((ItemStack) args[0]).getItem()).toString());
|
|
|
|
|
|
|
|
ScriptCraftCore.addBridge("ItemStack.setCount", args -> {
|
|
|
|
((ItemStack) args[0]).setCount((int) ValueUtil.toDouble(args[1], 0));
|
|
|
|
return null;
|
|
|
|
});
|
|
|
|
ScriptCraftCore.addBridge("ItemStack.getCount", args -> (double) ((ItemStack) args[0]).getCount());
|
|
|
|
|
|
|
|
ScriptCraftCore.addBridge("ItemStack.setDamage", args -> {
|
|
|
|
((ItemStack) args[0]).setDamage((int) ValueUtil.toDouble(args[1], 0));
|
|
|
|
return null;
|
|
|
|
});
|
|
|
|
ScriptCraftCore.addBridge("ItemStack.getDamage", args -> (double) ((ItemStack) args[0]).getDamage());
|
|
|
|
ScriptCraftCore.addBridge("ItemStack.isDamageable", args -> ((ItemStack) args[0]).isDamageable());
|
|
|
|
|
|
|
|
ScriptCraftCore.addBridge("ItemStack.getTag", args -> ((ItemStack) args[0]).getTag());
|
|
|
|
ScriptCraftCore.addBridge("ItemStack.setTag", args -> {
|
|
|
|
((ItemStack) args[0]).setTag((CompoundTag) args[1]);
|
|
|
|
return null;
|
|
|
|
});
|
|
|
|
|
|
|
|
ScriptCraftCore.addBridge("ItemStack.toTag", args -> ((ItemStack) args[0]).toTag(new CompoundTag()));
|
|
|
|
ScriptCraftCore.addBridge("ItemStack.fromTag", args -> ItemStack.fromTag((CompoundTag) args[1]));
|
2020-04-28 20:18:22 +00:00
|
|
|
|
|
|
|
ScriptCraftCore.addBridge("ItemStack.split", args -> ((ItemStack) args[0]).split((int) ValueUtil.toDouble(args[1], 0)));
|
2020-04-28 00:15:24 +00:00
|
|
|
}
|
|
|
|
}
|