WIP: Add a dedicated server option

This commit is contained in:
2025-01-29 23:53:15 +01:00
parent 67e81abad9
commit c62b2d7a09
35 changed files with 651 additions and 86 deletions

View File

@ -4,14 +4,24 @@ var player_manager: PlayerManager = PlayerManager.new()
# Called when the node enters the scene tree for the first time.
func _ready() -> void:
var map_dir := DirAccess.open("res://scenes/maps/maps/")
if map_dir:
map_dir.list_dir_begin()
var file_name = map_dir.get_next()
while file_name != "":
$UI/CreateServer/Maps.add_item(file_name)
file_name = map_dir.get_next()
if OS.has_feature("dedicated_server"):
print("I'm here")
var chosen_map = "lowpoly_tdm_2.tscn"
var path_tmpl := "res://scenes/maps/maps/%s"
var path := path_tmpl % chosen_map
GameServerManager.current_map = path
var err := GameServerManager.create_server(player_manager)
if err != OK:
push_error("couldn't create a server")
change_level.call_deferred(load(path))
else:
var map_dir := DirAccess.open("res://scenes/maps/maps/")
if map_dir:
map_dir.list_dir_begin()
var file_name = map_dir.get_next()
while file_name != "":
$UI/CreateServer/Maps.add_item(file_name)
file_name = map_dir.get_next()
# Called every frame. 'delta' is the elapsed time since the previous frame.
func _process(delta: float) -> void: