diff --git a/src/environment.cpp b/src/environment.cpp index 41ba52a6fd364fe7331970bff7a83b1cebd1ca90..9748f6b71d00c77487554b4c7f395696ee3eac94 100644 --- a/src/environment.cpp +++ b/src/environment.cpp @@ -472,6 +472,8 @@ void ServerEnvironment::deSerializePlayers(const std::string &savedir) newplayer = true; } + ServerRemotePlayer *srp = static_cast<ServerRemotePlayer*>(player); + // Load player { infostream<<"Reading player "<<testplayer.getName()<<" from " @@ -483,7 +485,9 @@ void ServerEnvironment::deSerializePlayers(const std::string &savedir) infostream<<"Failed to read "<<path<<std::endl; continue; } - player->deSerialize(is); + srp->deSerialize(is); + srp->m_last_good_position = srp->getBasePosition(); + srp->m_last_good_position_age = 0; } if(newplayer)