Finish implementing - and testing SNBT

This commit is contained in:
zontreck 2024-06-06 18:14:41 -07:00
parent a0f372693b
commit dfd536ae1c
10 changed files with 57 additions and 3 deletions

View file

@ -44,6 +44,7 @@ enum TagType {
static TagType getStringifiedTagType(StringReader reader) {
reader.startSeek();
TagType ret = TagType.End;
bool isNumber = true;
// Start to determine the next tag type
while (reader.canRead && ret == TagType.End) {
@ -97,6 +98,11 @@ enum TagType {
ret = TagType.Float;
break;
}
case "I":
{
ret = TagType.Int;
break;
}
case "L":
{
ret = TagType.Long;
@ -107,6 +113,26 @@ enum TagType {
ret = TagType.Short;
break;
}
case "\"":
{
ret = TagType.String;
break;
}
case ",":
case "\n":
{
if (reader.getSeeked >= 1) ret = TagType.String;
if (isNumber) ret = TagType.Int;
break;
}
default:
{
if (!reader.isDigit(val)) {
if (isNumber) isNumber = false;
}
break;
}
}
}