From 0739ab62574219c0feb9ad67589538576d0daf07 Mon Sep 17 00:00:00 2001 From: DeNNiiInc Date: Sat, 13 Dec 2025 20:17:23 +1100 Subject: [PATCH] Improve UX: Prompt for username immediately in multiplayer --- multiplayer.js | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/multiplayer.js b/multiplayer.js index cf8d3da..cedacd8 100644 --- a/multiplayer.js +++ b/multiplayer.js @@ -20,6 +20,14 @@ class MultiplayerClient { return; } + // Show username modal immediately if not saved + const savedUsername = localStorage.getItem('connect5_username'); + if (!savedUsername) { + this.showUsernameModal(); + } else { + this.username = savedUsername; // Pre-load username + } + // Dynamically construct proxy URLs based on current origin const targetUrl = window.location.origin; const servers = [ @@ -111,16 +119,14 @@ class MultiplayerClient { this.socket.on('connect', () => { console.log('✅ Connected to multiplayer server'); - // Check if username is saved in localStorage - const savedUsername = localStorage.getItem('connect5_username'); + // If we have a username (from localStorage or recently entered), try to register + const savedUsername = localStorage.getItem('connect5_username') || this.username; + if (savedUsername) { console.log('Found saved username:', savedUsername); - // Auto-login with saved username this.registerPlayer(savedUsername); - } else { - // Show username modal if no saved username - this.showUsernameModal(); - } + } + // If no username yet, do nothing (user is seeing the modal and will call registerPlayer when they submit) }); this.socket.on('disconnect', () => {