Fix current_cards list not be updated upon card removal

This commit is contained in:
CactiChameleon9 2022-07-17 17:05:43 +01:00
parent 6b2007ee1a
commit 3df809aa9d
2 changed files with 11 additions and 1 deletions

View File

@ -5,6 +5,7 @@ signal return_dice(dice_number)
signal do_movement(movement_range)
signal do_damage(damage, damage_range)
signal do_effect(effect, effect_range)
signal card_removed(card_self)
const TYPE_COLORS = [
Color("#db4758"), # DAMAGE
@ -187,5 +188,6 @@ func run_card():
input_dice = []
#card is used, disappear
emit_signal("card_removed", self)
queue_free()

View File

@ -31,6 +31,11 @@ func set_currently_holding_dice(dice_number : int):
currently_holding_dice = dice_number
func remove_card(card):
var card_index = current_cards.find(card)
current_cards.remove(card_index)
func _physics_process(delta):
# no keyboard input if not selected
@ -86,11 +91,14 @@ func draw_card(specific_card : String = ""):
else: #no card choosen, pick default
new_card.card_info = load(card_db_string % "Default")
# connect new_card.return_dice signal to self.emit_return_dice
# connect new_card.x signal to self.x
new_card.connect("return_dice", self, "emit_return_dice")
new_card.connect("do_movement", self, "emit_do_movement")
new_card.connect("do_damage", self, "emit_do_damage")
new_card.connect("do_effect", self, "emit_do_effect")
# connect the signal remove card signal
new_card.connect("card_removed", self, "remove_card")
# add the current card to the list of card
current_cards.append(new_card)