From f602384a94aaec943b590654604b460d6c1b0f22 Mon Sep 17 00:00:00 2001 From: MihailRis Date: Fri, 9 Jan 2026 03:26:32 +0300 Subject: [PATCH] update player spawn point auto selection --- src/objects/Player.cpp | 6 ++---- src/objects/Player.hpp | 2 +- 2 files changed, 3 insertions(+), 5 deletions(-) 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;