LCEMP v1.1.0, bugfixes, multithreading server, local leaderboard, performance fixes, and more

This commit is contained in:
NOTPIES
2026-04-20 18:56:39 -04:00
parent fadeee4192
commit 7e7668c7fa
88 changed files with 4825 additions and 634 deletions

View File

@@ -603,18 +603,19 @@ bool MultiPlayerLevel::doSetTileAndData(int x, int y, int z, int tile, int data)
void MultiPlayerLevel::disconnect(bool sendDisconnect /*= true*/)
{
vector<ClientConnection *> connectionsTemp = connections;
if( sendDisconnect )
{
for(AUTO_VAR(it, connections.begin()); it < connections.end(); ++it )
for(AUTO_VAR(it, connectionsTemp.begin()); it < connectionsTemp.end(); ++it )
{
(*it)->sendAndDisconnect( shared_ptr<DisconnectPacket>( new DisconnectPacket(DisconnectPacket::eDisconnect_Quitting) ) );
if( *it ) (*it)->sendAndDisconnect( shared_ptr<DisconnectPacket>( new DisconnectPacket(DisconnectPacket::eDisconnect_Quitting) ) );
}
}
else
{
for(AUTO_VAR(it, connections.begin()); it < connections.end(); ++it )
for(AUTO_VAR(it, connectionsTemp.begin()); it < connectionsTemp.end(); ++it )
{
(*it)->close();
if( *it ) (*it)->close();
}
}
}