mirror of
https://github.com/michaelrausch/Party-Parrots-At-Sea.git
synced 2026-05-09 14:28:43 +00:00
Fixed sending wrong race xml when a player disconnected because xml is getting data from gamestate yacht but the yachts are not updated is player disconnect.
Heartbeat packet was sent out at wrong rate which cause the player disconnect detection to be slow. Heartbeat packet is send out every 200ms now. #story[1055] #pair[hyi25, zyt10]
This commit is contained in:
@@ -137,11 +137,21 @@ public class MainServerThread extends Observable implements Runnable, PacketBuff
|
||||
*/
|
||||
@Override
|
||||
public void clientDisconnected(Player player) {
|
||||
serverLog("Player disconnected", 0);
|
||||
try {
|
||||
player.getSocket().close();
|
||||
} catch (Exception e) {
|
||||
serverLog("Cannot disconnect the socket for the disconnected player.", 0);
|
||||
}
|
||||
serverLog("Player " + player.getYacht().getSourceId() + "'s socket disconnected", 0);
|
||||
GameState.removeYacht(player.getYacht().getSourceId());
|
||||
GameState.removePlayer(player);
|
||||
for (ServerToClientThread serverToClientThread : serverToClientThreads) {
|
||||
if (serverToClientThread.getSocket() == player.getSocket()) {
|
||||
this.deleteObserver(serverToClientThread);
|
||||
}
|
||||
}
|
||||
setChanged();
|
||||
notifyObservers();
|
||||
// sendXml();
|
||||
}
|
||||
|
||||
public void startGame() {
|
||||
|
||||
Reference in New Issue
Block a user