scoring implemented; clients calculate scores individually and display ranks per player
This commit is contained in:
@@ -19,6 +19,7 @@ var _is_owned: bool
|
||||
@export_range(0, 20, 0.1, "radians_as_degrees") var card_angle: float
|
||||
|
||||
@export var name_label: Label3D
|
||||
@export var rank_label: Label3D
|
||||
@export var hide_client_name: bool = false
|
||||
|
||||
var _selected_card: PlayingCard = null
|
||||
@@ -93,3 +94,9 @@ func _on_play_card_button_pressed() -> void:
|
||||
remove_card(_selected_card)
|
||||
_selected_card = null
|
||||
card_selected.emit(-1)
|
||||
|
||||
func display_rank(rank: int, score: int) -> void:
|
||||
rank_label.text = "#{rank} ({pts} pts)".format({
|
||||
"rank": rank,
|
||||
"pts": score,
|
||||
})
|
||||
|
||||
@@ -3,12 +3,13 @@
|
||||
[ext_resource type="Script" uid="uid://b5b5cl2qlhywv" path="res://elements/player_hand.gd" id="1_ank64"]
|
||||
[ext_resource type="PackedScene" uid="uid://b55xpcxk7g5ph" path="res://cards/playing_card.tscn" id="2_11xsc"]
|
||||
|
||||
[node name="PlayerHand" type="Node3D" node_paths=PackedStringArray("card_container", "name_label")]
|
||||
[node name="PlayerHand" type="Node3D" node_paths=PackedStringArray("card_container", "name_label", "rank_label")]
|
||||
script = ExtResource("1_ank64")
|
||||
card_scene = ExtResource("2_11xsc")
|
||||
card_container = NodePath("CardContainer")
|
||||
card_angle = 0.125664
|
||||
name_label = NodePath("NameLabel")
|
||||
rank_label = NodePath("RankLabel")
|
||||
|
||||
[node name="NameLabel" type="Label3D" parent="."]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.513717, 0)
|
||||
@@ -17,3 +18,8 @@ double_sided = false
|
||||
text = "name goes here"
|
||||
|
||||
[node name="CardContainer" type="Node3D" parent="."]
|
||||
|
||||
[node name="RankLabel" type="Label3D" parent="."]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.283052, 0)
|
||||
billboard = 1
|
||||
double_sided = false
|
||||
|
||||
Reference in New Issue
Block a user