Finish implementing - and testing SNBT
This commit is contained in:
parent
a0f372693b
commit
dfd536ae1c
10 changed files with 57 additions and 3 deletions
|
@ -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;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue