From d1e3e3d31397434526efe5ca6bc3cd49050c9eed Mon Sep 17 00:00:00 2001 From: leca Date: Wed, 21 Feb 2024 15:52:46 +0300 Subject: [PATCH] created settings for class types, embeeded spawnpoint config --- scripts/Networking.gd | 11 ++++++++++- settings/server-settings.json | 6 ++++++ 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/scripts/Networking.gd b/scripts/Networking.gd index d84993d..c5ae122 100644 --- a/scripts/Networking.gd +++ b/scripts/Networking.gd @@ -93,6 +93,14 @@ func find_weapon_by_number(number): break return found_weapon +func find_class_type_by_number(number): + var found_class + var classtypes = settings["game"]["classTypes"] + for classtype in classtypes: + if classtypes[classtype]["number"] == number: + found_class = classtypes[classtype].duplicate() + break + return found_class func _Peer_Connected(client_id): print("User " + str(client_id) + " has conected") @@ -122,7 +130,8 @@ func client_ready(client_id): clients[client_id]["ready"] = true var client_cb3d = find_cb3d_by_internal_id(internal_id) - client_cb3d.teleport.rpc_id(client_id, Vector3(0, 5, 0)) + var class_spawnpoint = find_class_type_by_number(client["class_type"])["spawnpoint"] + client_cb3d.teleport.rpc_id(client_id, Vector3(class_spawnpoint[0], class_spawnpoint[1], class_spawnpoint[2])) func _Peer_Disconnected(client_id): print("User " + str(client_id) + " has disconnected") diff --git a/settings/server-settings.json b/settings/server-settings.json index 7d39154..bce81e8 100644 --- a/settings/server-settings.json +++ b/settings/server-settings.json @@ -40,6 +40,12 @@ "ammo": 100, "range": 100 } + }, + "classTypes": { + "spectator": { + "number": 0, + "spawnpoint": [0, 4, 0] + } } } }