diff --git a/source/Protocol132.cpp b/source/Protocol132.cpp index 2b8d4c19c..48ecff0b2 100644 --- a/source/Protocol132.cpp +++ b/source/Protocol132.cpp @@ -297,6 +297,9 @@ void cProtocol132::SendLogin(const cPlayer & a_Player, const cWorld & a_World) Flush(); SendCompass(a_World); + + // Send the initial position (so that confirmation works, FS #245): + SendPlayerMoveLook(); } diff --git a/source/cClientHandle.cpp b/source/cClientHandle.cpp index 75efce3dc..5802fc1d1 100644 --- a/source/cClientHandle.cpp +++ b/source/cClientHandle.cpp @@ -241,6 +241,8 @@ void cClientHandle::Authenticate(void) m_Player->SetIP (m_Socket.GetIPString()); cRoot::Get()->GetPluginManager()->CallHook(cPluginManager::HOOK_PLAYER_SPAWN, 1, m_Player); + + m_ConfirmPosition = m_Player->GetPosition(); // Return a server login packet m_Protocol->SendLogin(*m_Player, *World); @@ -1499,7 +1501,6 @@ void cClientHandle::SendConfirmPosition(void) cRoot::Get()->GetServer()->BroadcastChat(m_Username + " joined the game!", this); } - m_ConfirmPosition = m_Player->GetPosition(); SendPlayerMoveLook(); }