diff --git a/src/main/java/com/thebrokenrail/scriptcraft/bridge/TagBridges.java b/src/main/java/com/thebrokenrail/scriptcraft/bridge/TagBridges.java index 2756797..5a8ee29 100644 --- a/src/main/java/com/thebrokenrail/scriptcraft/bridge/TagBridges.java +++ b/src/main/java/com/thebrokenrail/scriptcraft/bridge/TagBridges.java @@ -6,6 +6,7 @@ import net.minecraft.nbt.AbstractNumberTag; import net.minecraft.nbt.ByteTag; import net.minecraft.nbt.CompoundTag; import net.minecraft.nbt.DoubleTag; +import net.minecraft.nbt.ListTag; import net.minecraft.nbt.StringTag; import net.minecraft.nbt.Tag; @@ -71,5 +72,8 @@ class TagBridges { AbstractListTag tag = (AbstractListTag) args[0]; return tag.size(); }); + + Bridges.addBridge("CompoundTag.create", args -> new CompoundTag()); + Bridges.addBridge("ListTag.create", args -> new ListTag()); } } diff --git a/src/main/resources/scriptcraft/minecraft/tag.ts b/src/main/resources/scriptcraft/minecraft/tag.ts index 745cce8..6ed22f9 100644 --- a/src/main/resources/scriptcraft/minecraft/tag.ts +++ b/src/main/resources/scriptcraft/minecraft/tag.ts @@ -59,6 +59,19 @@ export class CompoundTag { keys(): string[] { return useBridge('CompoundTag.keys', this.javaObject) as string[]; } + + /** + * Create Empty Tag + * @returns Empty Tag + */ + static create(): CompoundTag { + const obj = useBridge('CompoundTag.create') as JavaObject; + if (obj) { + return new CompoundTag(obj); + } else { + return null; + } + } } /** @@ -103,4 +116,17 @@ export class ListTag { size(): number { return useBridge('ListTag.size', this.javaObject) as number; } + + /** + * Create Empty Tag + * @returns Empty Tag + */ + static create(): ListTag { + const obj = useBridge('ListTag.create') as JavaObject; + if (obj) { + return new ListTag(obj); + } else { + return null; + } + } } \ No newline at end of file