feat: support configurable game server address and port
* Launch game servers in headless mode * Add configurable game address and port to GameData * Pass dynamically assigned server ports to clients * Update lobby defaults for `0.0.0.0:8080` * Refactor server command-line argument handling
This commit is contained in:
12
server.gd
12
server.gd
@@ -22,6 +22,8 @@ func _ready() -> void:
|
||||
for arg in OS.get_cmdline_user_args():
|
||||
if "name_" in arg:
|
||||
name_(arg)
|
||||
elif "server_" in arg:
|
||||
server_(arg)
|
||||
|
||||
match arg:
|
||||
"server":
|
||||
@@ -36,6 +38,16 @@ func name_(arg: String) -> void:
|
||||
var game_name = arg.split("_")[-1]
|
||||
self.name = game_name
|
||||
|
||||
func server_(arg: String) -> void:
|
||||
var host_port = float(arg.split("_")[-1])
|
||||
|
||||
Globals.game_state.set_game_scene(
|
||||
"res://scenes/screens/lobby_screen/lobby.tscn"
|
||||
)
|
||||
|
||||
$scene/lobby_screen.find_child("host_port_range", true, false).set_value_no_signal(host_port)
|
||||
$scene/lobby_screen.find_child("host_start_bttn", true, false).emit_signal("pressed")
|
||||
|
||||
func server(_arg: String) -> void:
|
||||
Globals.game_state.set_game_scene(
|
||||
"res://scenes/screens/lobby_screen/lobby.tscn"
|
||||
|
||||
Reference in New Issue
Block a user