Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- extends Node
- var peer := ENetMultiplayerPeer.new()
- var auth_token := "my_secret_token" # Установите токен
- var is_authorized := false
- func _ready():
- pass
- func _on_peer_connected(id):
- print("Подключено к серверу, ID:", id)
- var playerId = multiplayer.get_unique_id()
- print("Unique ID:", playerId)
- $ButtonDisconnect.disabled = false
- send_auth_request()
- func _on_peer_disconnected(id):
- print("Отключено от сервера, ID:", id)
- is_authorized = false
- multiplayer.multiplayer_peer.close()
- multiplayer.peer_connected.disconnect(_on_peer_connected)
- multiplayer.peer_disconnected.disconnect(_on_peer_disconnected)
- #multiplayer.multiplayer_peer = null
- $ButtonConnect.disabled = false
- $ButtonDisconnect.disabled = true
- func send_auth_request():
- rpc_id(1, "authorize", auth_token)
- @rpc("any_peer")
- func authorize(success: bool):
- is_authorized = success
- if success:
- print("Авторизация успешна")
- else:
- print("Ошибка авторизации")
- multiplayer.multiplayer_peer.close()
- @rpc("any_peer")
- func receive_message(msg: String):
- print("Ответ от сервера:", msg)
- func send_message(msg: String):
- if is_authorized:
- rpc_id(1, "receive_message", msg)
- else:
- print("Сообщение не отправлено: не авторизован")
- func _input(event):
- if event.is_action_pressed("ui_accept"):
- send_message("GET_SCORE:1")
- elif event.is_action_pressed("ui_cancel"):
- send_message("UPDATE_SCORE:1,100")
- func _on_button_connect_pressed() -> void:
- $ButtonConnect.disabled = true
- peer.create_client("127.0.0.1", 9090)
- multiplayer.multiplayer_peer = peer
- multiplayer.peer_connected.connect(_on_peer_connected)
- multiplayer.peer_disconnected.connect(_on_peer_disconnected)
- print("Подключаемся к серверу...")
- func _on_button_disconnect_pressed() -> void:
- $ButtonDisconnect.disabled = true
- #peer.host.destroy()
- multiplayer.multiplayer_peer.close()
- multiplayer.peer_connected.disconnect(_on_peer_connected)
- multiplayer.peer_disconnected.disconnect(_on_peer_disconnected)
- $ButtonConnect.disabled = false
- pass # Replace with function body.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement