Added player selection

pull/35/head
desktop 2021-02-26 22:47:10 +01:00
parent a7f941c1e0
commit 9ca09b25ee
2 changed files with 14 additions and 2 deletions

View File

@ -251,15 +251,21 @@ func get_player_data():
for player in players:
var data = {}
data["nickname"] = player.nickname
data["char_class"] = player.player_class
player_data[player.name] = data
return player_data
func get_character_scene(character_name):
var path = "res://Assets/Characters/" + character_name + "/" + character_name + ".tscn"
var packed_character = load(path)
remote func check_players(player_data):
for player_name in player_data:
if not $Players.has_node(player_name):
var player = player_scene.instance()
var data = player_data[player_name]
var player = get_character_scene(data["char_class"]).instance()
player.name = player_name
player.set_network_master(int(player_name))
@ -267,7 +273,6 @@ remote func check_players(player_data):
$Players.add_child(player)
player.translation += Vector3(0.0, 3.0, 0.0)
var data = player_data[player_name]
player.set_nickname(data["nickname"])
on_player_added(player)

View File

@ -39,6 +39,7 @@ var walkDirInt = Vector2.ZERO
#var bulletHitEffect = preload("res://Assets/Effects/BulletHit.tscn")
var bodyHitEffect = preload("res://Assets/Effects/BodyHit.tscn")
onready var nickname = "guest" setget set_nickname
var player_class = "none"
#func sfx_play_footsteps():
# if not sfx_footsteps_play:
@ -311,6 +312,12 @@ func set_local_player():
# Called when the node enters the scene tree for the first time.
func _ready():
# Set player class
var path = get_script().get_path()
if path.find("res://Assets/Characters/") != -1:
player_class = path.replace("res://Assets/Characters/", "").split("/")[0]
set_health(max_health)
# disabled the ragdoll collider
#for i in $Player/Gibs.get_children():