@Override public String toString() { String append = ""; if (name != null && !name.equals("")) { append = "(\"" + this.getName() + "\")"; } StringBuilder bldr = new StringBuilder(); bldr.append("TAG_List").append(append).append(": ").append(value.size()).append(" entries of type ").append(TagType.fromClass(tagClass).getTypeName()).append("\r\n{\r\n"); for (Tag t : value) { bldr.append(" ").append(t.toString().replaceAll("\r\n", "\r\n ")).append("\r\n"); } bldr.append("}"); return bldr.toString(); } }
private Tag<?> readTag(int depth) throws IOException { if (closed) { throw new IllegalStateException("Trying to read from a closed reader!"); } int typeId = input.readByte() & 0xFF; TagType type = TagType.fromId(typeId); if (type == null) { throw new IOException("Invalid encoding ID " + typeId); } return deserialize(type, false, depth); }
public String getTypeName() { return "TAG_" + name(); }
case LIST: int inId = input.readByte() & 0xFF; TagType listType = TagType.fromId(inId); if (listType == null) { String append = tagName == null ? "" : "('" + tagName + "')"; return new ListTag(tagName, listType.getTagClass(), list); case INT_ARRAY: int arraySz2 = encoding == MCPE_0_16_NETWORK ? Varints.decodeSigned(input) : input.readInt();
throw new IllegalArgumentException("Reached depth limit"); TagType type = TagType.fromClass(tag.getClass()); if (type == null) { throw new IllegalArgumentException("Tag " + tag + " is not valid."); output.writeByte(type.ordinal() & 0xFF); writeString(tag.getName()); case LIST: ListTag<?> listt = (ListTag<?>) tag; output.writeByte(TagType.fromClass(listt.getTagClass()).ordinal()); if (encoding == NBTEncoding.MCPE_0_16_NETWORK) { Varints.encodeSigned(output, listt.getValue().size());