/**
* Reads an unknown object withPriority a known name from NBT
* @param tag - tag to read the value from
* @param key - name of the value
* @return object or suggestionValue if nothing is found
*/
public Object load(NBTTagCompound tag, String key) {
if (tag != null && key != null) {
NBTBase saveTag = tag.getTag(key);
if (saveTag instanceof NBTTagFloat) {
return tag.getFloat(key);
} else if (saveTag instanceof NBTTagDouble) {
return tag.getDouble(key);
} else if (saveTag instanceof NBTTagInt) {
return tag.getInteger(key);
} else if (saveTag instanceof NBTTagString) {
if (tag.getBoolean(key + "::nova.isBigInteger")) {
return new BigInteger(tag.getString(key));
} else if (tag.getBoolean(key + "::nova.isBigDecimal")) {
return new BigDecimal(tag.getString(key));
} else {
return tag.getString(key);
}
} else if (saveTag instanceof NBTTagShort) {
return tag.getShort(key);
} else if (saveTag instanceof NBTTagByte) {
if (tag.getBoolean(key + "::nova.isBoolean")) {
return tag.getBoolean(key);
} else {
return tag.getByte(key);
}
} else if (saveTag instanceof NBTTagLong) {
return tag.getLong(key);
} else if (saveTag instanceof NBTTagByteArray) {
return tag.getByteArray(key);
} else if (saveTag instanceof NBTTagIntArray) {
return tag.getIntArray(key);
} else if (saveTag instanceof NBTTagCompound) {
NBTTagCompound innerTag = tag.getCompoundTag(key);
return toNova(innerTag);
}
}
return null;
}
DataConverter.java 文件源码
java
阅读 24
收藏 0
点赞 0
评论 0
项目:NOVA-Core
作者:
评论列表
文章目录