diff options
author | metamuffin <metamuffin@disroot.org> | 2024-06-24 19:28:54 +0200 |
---|---|---|
committer | metamuffin <metamuffin@disroot.org> | 2024-06-24 19:28:54 +0200 |
commit | dbb52c813e64fbe4e733dbfec4e29889d288873e (patch) | |
tree | fe278b138f0be0fb403f34ab13e057fbef302d59 /client/multiplayer.gd | |
parent | aedfd730dc305e122b9fe8dfd910238be9f7c1d9 (diff) | |
download | hurrycurry-dbb52c813e64fbe4e733dbfec4e29889d288873e.tar hurrycurry-dbb52c813e64fbe4e733dbfec4e29889d288873e.tar.bz2 hurrycurry-dbb52c813e64fbe4e733dbfec4e29889d288873e.tar.zst |
make multiplayer non global
Diffstat (limited to 'client/multiplayer.gd')
-rw-r--r-- | client/multiplayer.gd | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/client/multiplayer.gd b/client/multiplayer.gd index 7ccfd377..2d4b9533 100644 --- a/client/multiplayer.gd +++ b/client/multiplayer.gd @@ -15,6 +15,7 @@ # You should have received a copy of the GNU Affero General Public License # along with this program. If not, see <https://www.gnu.org/licenses/>. # +class_name Multiplayer extends Node signal init(player_id: int) @@ -46,10 +47,15 @@ var player_id = -1 var tileid_by_pos: Dictionary = {} -var url = "" -func connect_client(): - socket.connect_to_url(url) +func _ready(): + print("Multiplayer connect"); + socket.connect_to_url(Global.server_url) connected = true +func _notification(what): + if what == NOTIFICATION_PREDELETE: + print("Multiplayer disconnect"); + socket.close() + connected = false func _process(_delta): if connected: @@ -135,7 +141,7 @@ func handle_packet(bytes: PackedByteArray): var pos: Array = decoded["pos"] var neighbors: Array = decoded["neighbors"] tileid_by_pos[str(Vector2i(pos[0],pos[1]))] = tile - emit_signal("update_map", pos, tile_names[tile], neighbors) + emit_signal("update_map", pos, tile_names[tile], neighbors.map(func (x): return tile_names[x] if x != null else null)) "communicate": var player = decoded["player"] var message = decoded.get("message") |