diff options
author | Daniel Weipert <git@mail.dweipert.de> | 2025-02-08 23:44:34 +0100 |
---|---|---|
committer | Daniel Weipert <git@mail.dweipert.de> | 2025-02-08 23:44:34 +0100 |
commit | f6c81b065cf4d7f1302a50f2f72cfab32204a1ec (patch) | |
tree | 7690bae73a7bf54ed973a8c8480ba104d8ab413f /player/player.gd | |
parent | d24180c58e9e1d6149f0ac41d4f4bbaf674bdbd3 (diff) |
next commit
Diffstat (limited to 'player/player.gd')
-rw-r--r-- | player/player.gd | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/player/player.gd b/player/player.gd new file mode 100644 index 0000000..28e9caa --- /dev/null +++ b/player/player.gd @@ -0,0 +1,44 @@ +class_name Player +extends Node + + +var id: int: + set(value): + id = value + name = str(value) + +var current_team_name: String +var current_move_points := 10 + + +func get_color() -> Color: + var rng = RandomNumberGenerator.new() + rng.seed = id + + return Color(rng.randf(), rng.randf(), rng.randf()) + + +func set_current_team_name(value: String) -> void: + sync_current_team_name.rpc(value) + +@rpc("any_peer", "call_local") +func sync_current_team_name(value: String) -> void: + current_team_name = value + + +func set_current_move_points(value: int) -> void: + sync_current_move_points.rpc(value) + +@rpc("any_peer", "call_local") +func sync_current_move_points(value: int) -> void: + current_move_points = value + + +func set_initial_values() -> void: + if not multiplayer.is_server(): + sync_initial_values.rpc_id(1, multiplayer.get_unique_id()) + +@rpc("any_peer", "call_remote") +func sync_initial_values(target_id: int) -> void: + sync_current_team_name.rpc_id(target_id, current_team_name) + sync_current_move_points.rpc_id(target_id, current_move_points) |