Skip to content

Commit

Permalink
Add LongArray support for 1.13 and 1.14
Browse files Browse the repository at this point in the history
  • Loading branch information
Brokkonaut committed Aug 26, 2020
1 parent 1449acc commit b69e087
Show file tree
Hide file tree
Showing 3 changed files with 56 additions and 0 deletions.
Expand Up @@ -28,6 +28,7 @@
import org.cyberiantiger.minecraft.nbt.IntArrayTag;
import org.cyberiantiger.minecraft.nbt.IntTag;
import org.cyberiantiger.minecraft.nbt.ListTag;
import org.cyberiantiger.minecraft.nbt.LongArrayTag;
import org.cyberiantiger.minecraft.nbt.LongTag;
import org.cyberiantiger.minecraft.nbt.ShortTag;
import org.cyberiantiger.minecraft.nbt.StringTag;
Expand All @@ -46,6 +47,7 @@
import net.minecraft.server.v1_13_R2.NBTTagIntArray;
import net.minecraft.server.v1_13_R2.NBTTagList;
import net.minecraft.server.v1_13_R2.NBTTagLong;
import net.minecraft.server.v1_13_R2.NBTTagLongArray;
import net.minecraft.server.v1_13_R2.NBTTagShort;
import net.minecraft.server.v1_13_R2.NBTTagString;
import net.minecraft.server.v1_13_R2.TileEntity;
Expand Down Expand Up @@ -97,6 +99,9 @@ public NBTTagCompound toNativeCompound(CompoundTag tag) {
case STRING:
base = new NBTTagString(((StringTag) t).getValue());
break;
case LONG_ARRAY:
base = new NBTTagLongArray(((LongArrayTag) t).getValue());
break;
default:
// Can't be reached.
throw new IllegalArgumentException();
Expand Down Expand Up @@ -163,6 +168,12 @@ public NBTTagList toNativeList(ListTag tag) {
for (StringTag t : (StringTag[]) tag.getValue()) {
result.add(new NBTTagString(t.getValue()));
}
break;
case LONG_ARRAY:
for (LongArrayTag t : (LongArrayTag[]) tag.getValue()) {
result.add(new NBTTagLongArray(t.getValue()));
}
break;
}

return result;
Expand Down Expand Up @@ -229,6 +240,9 @@ public CompoundTag fromNativeCompound(String parentName, NBTTagCompound tag) {
case STRING:
result.put(name, new StringTag(((NBTTagString) b).b_()));
break;
case LONG_ARRAY:
result.put(name, new LongArrayTag(((NBTTagLongArray) b).d()));
break;
}
}
return new CompoundTag(result);
Expand Down Expand Up @@ -328,6 +342,11 @@ public ListTag fromNativeList(String parentName, NBTTagList tag) {
t[i] = new StringTag(((NBTTagString) list.get(i)).b_());
}
break;
case LONG_ARRAY:
for (int i = 0; i < tag.size(); i++) {
t[i] = new LongArrayTag(((NBTTagLongArray) list.get(i)).d());
}
break;
}
return new ListTag(type, t);
} catch (IllegalArgumentException ex) {
Expand Down
Expand Up @@ -28,6 +28,7 @@
import org.cyberiantiger.minecraft.nbt.IntArrayTag;
import org.cyberiantiger.minecraft.nbt.IntTag;
import org.cyberiantiger.minecraft.nbt.ListTag;
import org.cyberiantiger.minecraft.nbt.LongArrayTag;
import org.cyberiantiger.minecraft.nbt.LongTag;
import org.cyberiantiger.minecraft.nbt.ShortTag;
import org.cyberiantiger.minecraft.nbt.StringTag;
Expand All @@ -46,6 +47,7 @@
import net.minecraft.server.v1_13_R2.NBTTagIntArray;
import net.minecraft.server.v1_13_R2.NBTTagList;
import net.minecraft.server.v1_13_R2.NBTTagLong;
import net.minecraft.server.v1_13_R2.NBTTagLongArray;
import net.minecraft.server.v1_13_R2.NBTTagShort;
import net.minecraft.server.v1_13_R2.NBTTagString;
import net.minecraft.server.v1_13_R2.TileEntity;
Expand Down Expand Up @@ -97,6 +99,9 @@ public NBTTagCompound toNativeCompound(CompoundTag tag) {
case STRING:
base = new NBTTagString(((StringTag) t).getValue());
break;
case LONG_ARRAY:
base = new NBTTagLongArray(((LongArrayTag) t).getValue());
break;
default:
// Can't be reached.
throw new IllegalArgumentException();
Expand Down Expand Up @@ -163,6 +168,12 @@ public NBTTagList toNativeList(ListTag tag) {
for (StringTag t : (StringTag[]) tag.getValue()) {
result.add(new NBTTagString(t.getValue()));
}
break;
case LONG_ARRAY:
for (LongArrayTag t : (LongArrayTag[]) tag.getValue()) {
result.add(new NBTTagLongArray(t.getValue()));
}
break;
}

return result;
Expand Down Expand Up @@ -229,6 +240,9 @@ public CompoundTag fromNativeCompound(String parentName, NBTTagCompound tag) {
case STRING:
result.put(name, new StringTag(((NBTTagString) b).asString()));
break;
case LONG_ARRAY:
result.put(name, new LongArrayTag(((NBTTagLongArray) b).d()));
break;
}
}
return new CompoundTag(result);
Expand Down Expand Up @@ -328,6 +342,11 @@ public ListTag fromNativeList(String parentName, NBTTagList tag) {
t[i] = new StringTag(((NBTTagString) list.get(i)).asString());
}
break;
case LONG_ARRAY:
for (int i = 0; i < tag.size(); i++) {
t[i] = new LongArrayTag(((NBTTagLongArray) list.get(i)).d());
}
break;
}
return new ListTag(type, t);
} catch (IllegalArgumentException ex) {
Expand Down
Expand Up @@ -22,6 +22,7 @@
import net.minecraft.server.v1_14_R1.NBTTagIntArray;
import net.minecraft.server.v1_14_R1.NBTTagList;
import net.minecraft.server.v1_14_R1.NBTTagLong;
import net.minecraft.server.v1_14_R1.NBTTagLongArray;
import net.minecraft.server.v1_14_R1.NBTTagShort;
import net.minecraft.server.v1_14_R1.NBTTagString;
import net.minecraft.server.v1_14_R1.TileEntity;
Expand All @@ -41,6 +42,7 @@
import org.cyberiantiger.minecraft.nbt.IntArrayTag;
import org.cyberiantiger.minecraft.nbt.IntTag;
import org.cyberiantiger.minecraft.nbt.ListTag;
import org.cyberiantiger.minecraft.nbt.LongArrayTag;
import org.cyberiantiger.minecraft.nbt.LongTag;
import org.cyberiantiger.minecraft.nbt.ShortTag;
import org.cyberiantiger.minecraft.nbt.StringTag;
Expand Down Expand Up @@ -94,6 +96,9 @@ public NBTTagCompound toNativeCompound(CompoundTag tag) {
case STRING:
base = new NBTTagString(((StringTag) t).getValue());
break;
case LONG_ARRAY:
base = new NBTTagLongArray(((LongArrayTag) t).getValue());
break;
default:
// Can't be reached.
throw new IllegalArgumentException();
Expand Down Expand Up @@ -161,6 +166,11 @@ public NBTTagList toNativeList(ListTag tag) {
result.add(new NBTTagString(t.getValue()));
}
break;
case LONG_ARRAY:
for (LongArrayTag t : (LongArrayTag[]) tag.getValue()) {
result.add(new NBTTagLongArray(t.getValue()));
}
break;
case END:
break;
}
Expand Down Expand Up @@ -208,6 +218,9 @@ public CompoundTag fromNativeCompound(NBTTagCompound tag) {
case STRING:
result.put(name, new StringTag(((NBTTagString) b).asString()));
break;
case LONG_ARRAY:
result.put(name, new LongArrayTag(((NBTTagLongArray) b).getLongs()));
break;
case END:
break;
}
Expand Down Expand Up @@ -288,6 +301,11 @@ public ListTag fromNativeList(NBTTagList tag) {
t[i] = new StringTag(((NBTTagString) tag.get(i)).asString());
}
break;
case LONG_ARRAY:
for (int i = 0; i < tag.size(); i++) {
t[i] = new LongArrayTag(((NBTTagLongArray) tag.get(i)).getLongs());
}
break;
}
return new ListTag(type, t);
} catch (IllegalArgumentException ex) {
Expand Down

0 comments on commit b69e087

Please sign in to comment.