diff --git a/game.js b/game.js index bae3212..421a6a6 100644 --- a/game.js +++ b/game.js @@ -248,7 +248,8 @@ class Connect5Game { } // Initialize game when DOM is loaded -let game; +// Initialize game when DOM is loaded +window.game = null; document.addEventListener("DOMContentLoaded", () => { - game = new Connect5Game(); + window.game = new Connect5Game(); }); diff --git a/index.html b/index.html index 5a0b369..9fb7b7a 100644 --- a/index.html +++ b/index.html @@ -203,8 +203,8 @@ statusMessage.style.display = 'block'; // Reset to local mode - if (multiplayerClient) { - multiplayerClient.isMultiplayer = false; + if (window.multiplayerClient) { + window.multiplayerClient.isMultiplayer = false; } } else { localBtn.classList.remove('active'); @@ -215,9 +215,13 @@ statusMessage.style.display = 'none'; // Initialize multiplayer if not already - if (!multiplayerClient) { - multiplayerClient = new MultiplayerClient(game); - multiplayerClient.connect(); + if (!window.multiplayerClient) { + if (!window.game) { + console.error("Game instance not found!"); + return; + } + window.multiplayerClient = new MultiplayerClient(window.game); + window.multiplayerClient.connect(); } } } @@ -247,7 +251,14 @@ } error.style.display = 'none'; - multiplayerClient.registerPlayer(username); + + if (window.multiplayerClient) { + window.multiplayerClient.registerPlayer(username); + } else { + console.error("Multiplayer client not initialized"); + error.textContent = "Error: Multiplayer not initialized. Refresh page."; + error.style.display = 'block'; + } } // Change username diff --git a/multiplayer.js b/multiplayer.js index bf61134..993afb7 100644 --- a/multiplayer.js +++ b/multiplayer.js @@ -507,4 +507,5 @@ class MultiplayerClient { } // Initialize multiplayer client (will be used by game.js) -let multiplayerClient = null; +// Initialize multiplayer client (will be used by game.js) +window.multiplayerClient = null;