added PlayCardButton; influences card selection

This commit is contained in:
2025-07-08 17:07:32 +02:00
parent 167b455160
commit e0693725ea
4 changed files with 44 additions and 6 deletions
+20 -2
View File
@@ -11,18 +11,22 @@ extends Node3D
## How many test cards to add
@export_range(0, 20) var test_card_count: int = 0
@export var card_scene: PackedScene
@export_range(0, 20, 0.1, "radians_as_degrees") var card_angle: float
var _selected_card: PlayingCard = null
signal card_selected(card_id: int)
signal card_played(card_id: int)
func _ready() -> void:
_arrange_cards()
for i in test_card_count:
var card: PlayingCard = card_scene.instantiate()
card.card_clicked.connect(_on_card_clicked)
var test_details: Card = Card.new()
test_details.card_id = 2
card.card_details = test_details
add_card(card)
await get_tree().create_timer(0.2).timeout
@@ -58,3 +62,17 @@ func _on_card_clicked(playing_card: PlayingCard) -> void:
else:
_selected_card = playing_card
playing_card.select()
if _selected_card:
card_selected.emit(_selected_card.card_details.card_id)
else:
card_selected.emit(-1)
func _on_play_card_button_pressed() -> void:
if not _selected_card:
return
card_played.emit(_selected_card.card_details.card_id)
_selected_card.unselect()
_selected_card = null
card_selected.emit(-1)