diff options
author | metamuffin <metamuffin@disroot.org> | 2024-07-13 23:29:35 +0200 |
---|---|---|
committer | metamuffin <metamuffin@disroot.org> | 2024-07-13 23:29:35 +0200 |
commit | 9138b1f2d56e31343b8e13d4ed1ee07bdb210c43 (patch) | |
tree | 4d8fb2693fe62803188aa065c1ea12d428f6f5d4 /client/multiplayer.gd | |
parent | 0c77e0938de43a970e03c6dcef019c87745f0ee4 (diff) | |
parent | 78ab4d19c8e1f78a1e5092d643d0634721cea9ae (diff) | |
download | hurrycurry-9138b1f2d56e31343b8e13d4ed1ee07bdb210c43.tar hurrycurry-9138b1f2d56e31343b8e13d4ed1ee07bdb210c43.tar.bz2 hurrycurry-9138b1f2d56e31343b8e13d4ed1ee07bdb210c43.tar.zst |
Merge branch 'master' of https://codeberg.org/hurrycurry/hurrycurry
Diffstat (limited to 'client/multiplayer.gd')
-rw-r--r-- | client/multiplayer.gd | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/client/multiplayer.gd b/client/multiplayer.gd index 4c334700..d3e80613 100644 --- a/client/multiplayer.gd +++ b/client/multiplayer.gd @@ -52,9 +52,11 @@ signal score(demands_failed: int, demands_completed: int, points: int, time_rema signal hide_score() signal server_message(text: String) signal replay_start() - signal connection_closed(reason: String) +const VERSION_MAJOR: int = 1 +const VERSION_MINOR: int = 0 + var connected := false var socket := WebSocketPeer.new() @@ -81,7 +83,7 @@ func _process(_delta): var code = socket.get_close_code() var reason = socket.get_close_reason() connection_closed.emit( - "WebSocket closed with code: %d, reason %s. Clean: %s" % [code, reason, code != - 1] + tr("WebSocket closed with code: %d, reason %s. Clean: %s") % [code, reason, code != - 1] ) self.queue_free() @@ -96,6 +98,13 @@ func handle_packet(bytes: PackedByteArray): "init": var player_id = decoded["id"] init.emit(player_id) + "version": + var major = decoded["major"] + var minor = decoded["minor"] + if major != VERSION_MAJOR or minor != VERSION_MINOR: + socket.close() + connected = false + connection_closed.emit(tr("Server and client versions do not match. Server: %d.%d, Client: %d.%d.\nAre you sure the game is up to date?") % [major, minor, VERSION_MAJOR, VERSION_MINOR]) "data": var item_names = decoded["data"]["item_names"] var tile_names = decoded["data"]["tile_names"] |