diff --git a/src/objects/Player.cpp b/src/objects/Player.cpp index f27dc743e..a63341d49 100644 --- a/src/objects/Player.cpp +++ b/src/objects/Player.cpp @@ -105,10 +105,8 @@ void Player::postUpdate() { if (flight && hitbox.grounded && !noclip) { flight = false; } - if (spawnpoint.y <= 0.1) { - for (int i = 0; i < SPAWN_ATTEMPTS_PER_UPDATE; i++) { - attemptToFindSpawnpoint(); - } + for (int i = 0; i < SPAWN_ATTEMPTS_PER_UPDATE && std::isnan(spawnpoint.x); i++) { + attemptToFindSpawnpoint(); } } diff --git a/src/objects/Player.hpp b/src/objects/Player.hpp index 18c5a5996..02a7ce54b 100644 --- a/src/objects/Player.hpp +++ b/src/objects/Player.hpp @@ -49,7 +49,7 @@ class Player : public Serializable { int chosenSlot; glm::vec3 position; - glm::vec3 spawnpoint {}; + glm::vec3 spawnpoint {std::nanf(""), std::nanf(""), std::nanf("")}; std::shared_ptr inventory; bool suspended = false; bool flight = false;