Private
Public Access
1
0

Integrate direct WebSocket-based leaderboard functionality for real-time updates and requests. Refactor related client-side logic to utilize this new connection.

This commit is contained in:
Sebastian Unterschütz
2026-01-04 02:26:23 +01:00
parent 41d15c60d3
commit ce51a2ba4f
11 changed files with 192 additions and 39 deletions

View File

@@ -190,6 +190,17 @@ func (g *Game) connectForLeaderboard() {
return
}
// Temporäre Daten für Leaderboard-Verbindung
if g.playerName == "" {
g.playerName = "LeaderboardViewer"
}
if g.roomID == "" {
g.roomID = "leaderboard_only"
}
if g.gameMode == "" {
g.gameMode = "solo"
}
// Neue Verbindung aufbauen
g.connectToServer()
@@ -200,6 +211,13 @@ func (g *Game) connectForLeaderboard() {
// requestLeaderboard fordert das Leaderboard an
func (g *Game) requestLeaderboard() {
// Verbindung aufbauen falls nicht vorhanden
if g.wsConn == nil || !g.wsConn.connected {
log.Println("📡 Keine Verbindung für Leaderboard, stelle Verbindung her...")
go g.connectForLeaderboard()
return
}
mode := "solo"
if g.gameMode == "coop" {
mode = "coop"