From 368e787f89a40e8d011d765fbe96e2b7c5097a6b Mon Sep 17 00:00:00 2001 From: Anuken Date: Thu, 18 Jun 2026 09:59:50 -0400 Subject: [PATCH] Hide editor when joining a game --- core/src/mindustry/ui/dialogs/JoinDialog.java | 2 ++ desktop/src/mindustry/desktop/steam/SNet.java | 33 +++++++++++-------- 2 files changed, 21 insertions(+), 14 deletions(-) diff --git a/core/src/mindustry/ui/dialogs/JoinDialog.java b/core/src/mindustry/ui/dialogs/JoinDialog.java index a6c4cee76d..b661b06cd6 100644 --- a/core/src/mindustry/ui/dialogs/JoinDialog.java +++ b/core/src/mindustry/ui/dialogs/JoinDialog.java @@ -598,6 +598,8 @@ public class JoinDialog extends BaseDialog{ netClient.disconnectQuietly(); }); + ui.editor.hide(); + Time.runTask(2f, () -> { logic.reset(); net.reset(); diff --git a/desktop/src/mindustry/desktop/steam/SNet.java b/desktop/src/mindustry/desktop/steam/SNet.java index c237006757..588d6e4f07 100644 --- a/desktop/src/mindustry/desktop/steam/SNet.java +++ b/desktop/src/mindustry/desktop/steam/SNet.java @@ -285,26 +285,31 @@ public class SNet implements SteamNetworkingCallback, SteamMatchmakingCallback, return; } - logic.reset(); - net.reset(); + ui.editor.hide(); - currentLobby = steamIDLobby; - currentServer = smat.getLobbyOwner(steamIDLobby); + //delay joining by one frame because the editor bugs out if you don't + Core.app.post(() -> { + logic.reset(); + net.reset(); - Log.info("Connect to owner @: @", currentServer.getAccountID(), friends.getFriendPersonaName(currentServer)); + currentLobby = steamIDLobby; + currentServer = smat.getLobbyOwner(steamIDLobby); - if(joinCallback != null){ - joinCallback.run(); - joinCallback = null; - } + Log.info("Connecting to owner @: @", currentServer.getAccountID(), friends.getFriendPersonaName(currentServer)); - Connect con = new Connect(); - con.addressTCP = "steam:" + currentServer.getAccountID(); + if(joinCallback != null){ + joinCallback.run(); + joinCallback = null; + } - net.setClientConnected(); - net.handleClientReceived(con); + Connect con = new Connect(); + con.addressTCP = "steam:" + currentServer.getAccountID(); - Core.app.post(() -> Core.app.post(() -> Core.app.post(() -> Log.info("Server: @\nClient: @\nActive: @", net.server(), net.client(), net.active())))); + net.setClientConnected(); + net.handleClientReceived(con); + + Core.app.post(() -> Core.app.post(() -> Core.app.post(() -> Log.info("Server: @\nClient: @\nActive: @", net.server(), net.client(), net.active())))); + }); } @Override