fix: invalid cards added to board hopefully mitigated
fix: replaying scene allows duplicate cards, causing mayhem
This commit is contained in:
parent
1bdcf6c78f
commit
f8743b18b5
|
|
@ -216,7 +216,7 @@ func transition():
|
||||||
var out_str:Array[StringName] = []
|
var out_str:Array[StringName] = []
|
||||||
|
|
||||||
for card in output:
|
for card in output:
|
||||||
out_str.append(card.text if card.text != "" else "c_void")
|
out_str.append(card.name if card.name != "" else "c_void")
|
||||||
|
|
||||||
cards_picked.emit(out_str)
|
cards_picked.emit(out_str)
|
||||||
selection_state = DONE
|
selection_state = DONE
|
||||||
|
|
|
||||||
|
|
@ -98,6 +98,7 @@ func _input(event: InputEvent) -> void:
|
||||||
|
|
||||||
|
|
||||||
func play_story() -> void:
|
func play_story() -> void:
|
||||||
|
var repeat := collected
|
||||||
collected = true
|
collected = true
|
||||||
canvas_layer.show()
|
canvas_layer.show()
|
||||||
|
|
||||||
|
|
@ -113,15 +114,19 @@ func play_story() -> void:
|
||||||
# Play the story
|
# Play the story
|
||||||
await interaction_ui.play()
|
await interaction_ui.play()
|
||||||
|
|
||||||
# Pick the cards
|
# Pick the cards if not already picked
|
||||||
var picker := State.room.get_node("%Picker") as CardPicker
|
if not repeat:
|
||||||
await picker.pick_cards(interaction_ui.scene_id, false)
|
var picker := State.room.get_node("%Picker") as CardPicker
|
||||||
|
await picker.pick_cards(interaction_ui.scene_id, false)
|
||||||
|
|
||||||
|
|
||||||
# Hide the CanvasLayer when done
|
# Hide the CanvasLayer when done
|
||||||
canvas_layer.hide()
|
canvas_layer.hide()
|
||||||
|
|
||||||
Scenes.end_sequence(interaction_ui.scene_id) # todo: maybe later?
|
Scenes.end_sequence(interaction_ui.scene_id) # todo: maybe later?
|
||||||
|
|
||||||
Scenes.player_enable.emit(true) # TODO: this may not be our job?
|
Scenes.player_enable.emit(true)
|
||||||
|
active = true
|
||||||
expand()
|
expand()
|
||||||
|
|
||||||
func play_board() -> void:
|
func play_board() -> void:
|
||||||
|
|
@ -133,7 +138,7 @@ func play_board() -> void:
|
||||||
# Hide the CanvasLayer when done
|
# Hide the CanvasLayer when done
|
||||||
canvas_layer.hide()
|
canvas_layer.hide()
|
||||||
|
|
||||||
Scenes.player_enable.emit(true)
|
active = true
|
||||||
expand()
|
expand()
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -156,7 +161,7 @@ func collect_memento() -> void:
|
||||||
await play_board()
|
await play_board()
|
||||||
|
|
||||||
canvas_layer.hide()
|
canvas_layer.hide()
|
||||||
active = false
|
active = true
|
||||||
|
|
||||||
|
|
||||||
## Updates caption label based on the instantiated interaction_ui
|
## Updates caption label based on the instantiated interaction_ui
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue