Files
hsgj25-growth/growth/BaseCard/BaseCard.gd
T

33 lines
889 B
GDScript

extends Control
class_name BaseCard
@export var behaviors = []
@export var art: Texture2D
@export var title = ""
@export var description = ""
func _ready() -> void:
for behavior in behaviors:
$Behaviors.add_child(behavior.instantiate())
$MarginContainer/VSplitContainer/Art.texture = art
$MarginContainer/VSplitContainer/VSplitContainer2/Title.text = title
$MarginContainer/VSplitContainer/VSplitContainer2/Description.text = description
func activate(world, activator):
for behavior in $Behaviors.get_children():
behavior.activate(world, activator)
func discard(world, activator):
for behavior in $Behaviors.get_children():
behavior.discard(world, activator)
if "ammo" in behavior: # Wtf?
behavior.ammo = behavior.max_ammo
func get_ammo():
for behavior in $Behaviors.get_children():
if behavior.has_method("get_ammo"):
return behavior.get_ammo()
return -1