diff options
Diffstat (limited to 'Network/Lobby.gd')
-rw-r--r-- | Network/Lobby.gd | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/Network/Lobby.gd b/Network/Lobby.gd index 15f27ba..be045b0 100644 --- a/Network/Lobby.gd +++ b/Network/Lobby.gd @@ -7,6 +7,7 @@ func _ready(): Network.connect("player_list_changed", self, "refresh_lobby") Network.connect("game_error", self, "_on_game_error") Network.connect("game_ended", self, "_on_game_ended") + $HTTPRequest.connect("request_completed", self, '_set_remote_ip') if OS.has_environment("USERNAME"): $Connect/Name.text = OS.get_environment("USERNAME") @@ -39,11 +40,27 @@ func refresh_lobby(): func set_ip(): + self.set_local_ip() + self.set_remote_ip() + +func set_local_ip(): for ip in IP.get_local_addresses(): if ip.begins_with("192.168"): - $Players/IP.text = ip + $Players/LocalIP.text = ip break +func set_remote_ip(): + $Players/RemoteIP.text = "" + $HTTPRequest.request("https://ipv4.icanhazip.com/") + +func _set_remote_ip(result, response_code, headers, body): + if response_code == 200: + $Players/RemoteIP.text = body.get_string_from_utf8() + else: + $Players/RemoteIP.text = "Remote IP request failed!" + self._on_game_error("Remote IP request failed!") + + func _on_connection_succeeded(): $Connect.hide() $Players.show() |