diff --git a/lib/GMLIB_API-JS.js b/lib/GMLIB_API-JS.js index ab5d461..877d7a0 100644 --- a/lib/GMLIB_API-JS.js +++ b/lib/GMLIB_API-JS.js @@ -237,6 +237,9 @@ class Minecraft { static getPlayerNbt(uuid) { let snbt = GMLIB_API.getPlayerNbt(uuid); + if (snbt == "null") { + return null; + } let nbt = NBT.parseSNBT(snbt); return nbt; } diff --git a/src/CompatibilityApi.cpp b/src/CompatibilityApi.cpp index 729172f..4464a2f 100644 --- a/src/CompatibilityApi.cpp +++ b/src/CompatibilityApi.cpp @@ -27,7 +27,11 @@ void Export_Compatibility_API() { }); RemoteCall::exportAs("GMLIB_API", "getPlayerNbt", [](std::string uuid) -> std::string { auto uid = mce::UUID::fromString(uuid); - return GMLIB_Player::getPlayerNbt(uid)->toSnbt(); + auto nbt = GMLIB_Player::getPlayerNbt(uid); + if (nbt) { + return nbt->toSnbt(); + } + return "null"; }); RemoteCall::exportAs("GMLIB_API", "setPlayerNbt", [](std::string uuid, std::string snbt) -> bool { auto uid = mce::UUID::fromString(uuid);