UI fixes / Better ghost connection fix

This commit is contained in:
Anuken
2018-11-29 12:07:43 -05:00
parent f474d2c834
commit 0eec5383ed
2 changed files with 8 additions and 11 deletions

View File

@@ -598,20 +598,17 @@ public class NetServer extends Module{
} }
void sync(){ void sync(){
for(Player player : playerGroup.all()){
if(player.con == null || connections.get(player.con.id) == null){
onDisconnect(player);
}
}
try{ try{
//iterate through each player //iterate through each player
for(Player player : connections.values()){ for(Player player : playerGroup.all()){
if(player.isLocal) continue;
NetConnection connection = player.con; NetConnection connection = player.con;
if(!connection.isConnected()){ if(!connection.isConnected() || !connections.containsKey(connection.id)){
//player disconnected, ignore them //player disconnected, call d/c event
onDisconnect(player); onDisconnect(player);
return; return;
} }

View File

@@ -96,11 +96,11 @@ public class JoinDialog extends FloatingDialog{
//why are java lambdas this bad //why are java lambdas this bad
TextButton[] buttons = {null}; TextButton[] buttons = {null};
TextButton button = buttons[0] = remote.addButton("[accent]" + server.displayIP(), () -> { TextButton button = buttons[0] = remote.addButton("[accent]" + server.displayIP(), "clear", () -> {
if(!buttons[0].childrenPressed()){ if(!buttons[0].childrenPressed()){
connect(server.ip, server.port); connect(server.ip, server.port);
} }
}).width(targetWidth()).height(150f).pad(4f).get(); }).width(targetWidth()).height(155f).pad(4f).get();
button.getLabel().setWrap(true); button.getLabel().setWrap(true);
@@ -159,7 +159,7 @@ public class JoinDialog extends FloatingDialog{
Bundles.format("text.server.version", host.version); Bundles.format("text.server.version", host.version);
}else if(host.version > Version.build && Version.build != -1){ }else if(host.version > Version.build && Version.build != -1){
versionString = Bundles.get("text.server.outdated.client") + "\n" + versionString = Bundles.get("text.server.outdated.client") + "\n" +
Bundles.format("text.server.version", host.version); Bundles.format("text.server.version", host.version, "");
}else{ }else{
versionString = Bundles.format("text.server.version", host.version, host.versionType); versionString = Bundles.format("text.server.version", host.version, host.versionType);
} }