Internet/Local/Hotseat working (still need to test for bugs). ALso get an RPC error because we switch scene...
This commit is contained in:
parent
c95b8186ab
commit
c4909db2a5
654 changed files with 18133 additions and 39 deletions
|
|
@ -1,14 +1,63 @@
|
|||
extends Node
|
||||
|
||||
@onready var ws_client = $WSClient
|
||||
|
||||
func create_enet_server(port: int) -> void:
|
||||
# use timer to send udp broadcast packets to notify other LAN clients
|
||||
pass
|
||||
var peer: ENetMultiplayerPeer = ENetMultiplayerPeer.new()
|
||||
peer.create_server(port, 1)
|
||||
multiplayer.multiplayer_peer = peer
|
||||
|
||||
func close_enet_server() -> void:
|
||||
if multiplayer.multiplayer_peer is ENetMultiplayerPeer:
|
||||
multiplayer.multiplayer_peer.close()
|
||||
|
||||
|
||||
func disconnect_all() -> void:
|
||||
close_enet_server()
|
||||
close_enet_client()
|
||||
stop_webrtc()
|
||||
|
||||
ws_client.stop()
|
||||
|
||||
func connect_with_webrtc() -> void:
|
||||
pass
|
||||
|
||||
offline_mode()
|
||||
|
||||
func stop_webrtc() -> void:
|
||||
if multiplayer.multiplayer_peer is WebRTCMultiplayerPeer:
|
||||
multiplayer.multiplayer_peer.close()
|
||||
ws_client.stop()
|
||||
offline_mode()
|
||||
|
||||
func start_webrtc_lobby() -> void:
|
||||
if not multiplayer.multiplayer_peer is WebRTCMultiplayerPeer:
|
||||
disconnect_all()
|
||||
ws_client.rtc_mp = WebRTCMultiplayerPeer.new()
|
||||
|
||||
func connect_with_enet() -> void:
|
||||
pass
|
||||
|
||||
|
||||
if GameSettings.LOBBY_ENDPOINT.is_empty():
|
||||
ws_client.start(GameSettings.DEFAULT_LOBBY_ENDPOINT)
|
||||
else:
|
||||
ws_client.start(GameSettings.LOBBY_ENDPOINT)
|
||||
|
||||
func join_webrtc_lobby(lobby: String) -> void:
|
||||
if not multiplayer.multiplayer_peer is WebRTCMultiplayerPeer:
|
||||
disconnect_all()
|
||||
ws_client.rtc_mp = WebRTCMultiplayerPeer.new()
|
||||
|
||||
if GameSettings.LOBBY_ENDPOINT.is_empty():
|
||||
ws_client.start(GameSettings.DEFAULT_LOBBY_ENDPOINT, lobby)
|
||||
else:
|
||||
ws_client.start(GameSettings.LOBBY_ENDPOINT, lobby)
|
||||
|
||||
func connect_with_enet(ip: String, port: int) -> void:
|
||||
var peer: ENetMultiplayerPeer = ENetMultiplayerPeer.new()
|
||||
peer.create_client(ip, port)
|
||||
multiplayer.multiplayer_peer = peer
|
||||
|
||||
func close_enet_client() -> void:
|
||||
if multiplayer.multiplayer_peer is ENetMultiplayerPeer:
|
||||
multiplayer.multiplayer_peer.close()
|
||||
|
||||
func lan_mode() -> void:
|
||||
pass
|
||||
|
|
@ -17,5 +66,6 @@ func online_mode() -> void:
|
|||
pass
|
||||
|
||||
func offline_mode() -> void:
|
||||
GameData.peer_id = 1
|
||||
multiplayer.multiplayer_peer = OfflineMultiplayerPeer.new()
|
||||
pass
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue