From baf07a3269933a1e57627433202b7d74dfb16bcc Mon Sep 17 00:00:00 2001 From: betalars Date: Sat, 15 Jul 2023 01:08:42 +0200 Subject: [PATCH] integrating card_picker script with room scene --- src/logic-scenes/card_picker/card_picker.gd | 23 +++++++++++++++------ 1 file changed, 17 insertions(+), 6 deletions(-) diff --git a/src/logic-scenes/card_picker/card_picker.gd b/src/logic-scenes/card_picker/card_picker.gd index f2ebef4..dcd5d3b 100644 --- a/src/logic-scenes/card_picker/card_picker.gd +++ b/src/logic-scenes/card_picker/card_picker.gd @@ -15,15 +15,15 @@ var has_stage = false: set(focus): if not focus == has_stage: if focus: - for player in anim_players: player.play("reveal") - selection_state = CARDS # fixme + if selection_state == INI or CARDS: + for player in anim_players: player.play("reveal") self.show() self.mouse_filter = Control.MOUSE_FILTER_IGNORE else: self.mouse_filter = Control.MOUSE_FILTER_STOP + self.hide() has_stage = focus - visible = has_stage var selection_state = INI var input_locked = true @@ -56,14 +56,14 @@ func _ready(): options.append(control.get_child(1)) anim_players.append(control.get_child(0)) - fill_card_slots() + fill_card_slots(0) input_locked = false -func fill_card_slots(): +func fill_card_slots(id: int): for i in range($cards.get_child_count()): var card:Card = $cards.get_child(i).get_child(1) - card.replace_with(debug_board.get_child(0).get_child(i) as Card) + card.replace_with(debug_board.get_child(id).get_child(i) as Card) card.connect("mouse_entered", Callable(self, "get_highlight")) func fill_post_slots(): @@ -83,6 +83,8 @@ func _unhandled_input(event): curr_selection_id += 1 if event.is_action_pressed("ui_accept"): pick(curr_selection_id) + if event.is_action_pressed("ui_end"): + scene_finished(1) func pick(id: int): if id == -1: @@ -151,3 +153,12 @@ func handle_mouse_button(new_selection: Node, button_event: InputEventMouseButto if not input_locked: if button_event.button_index == MOUSE_BUTTON_LEFT and button_event.pressed: pick(options.find(new_selection)) + + +func scene_finished(id: int): + fill_card_slots(id) + State.transition_stage_to(self) + selection_state = CARDS + +func play_scene(_id): + pass