# (c) 2023-present Eroax # (c) 2023-present Yagich # GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt) extends DeckNode func _init() -> void: name = "Set Deck Var" node_type = name.to_snake_case() description = "Set a deck variable on trigger." add_input_port( DeckType.Types.STRING, "Variable Name", "field" ) add_input_port( DeckType.Types.ANY, "Value", "field" ) add_input_port( DeckType.Types.BOOL, "Set", "button" ) add_output_port( DeckType.Types.ANY, "Value", "label" ) func _receive(to_input_port: int, _data: Variant, _extra_data: Array = []) -> void: if to_input_port != 2: return var var_name: String = await resolve_input_port_value_async(0) var var_value: Variant = await resolve_input_port_value_async(1) #_belonging_to.variable_stack[var_name] = var_value _belonging_to.set_variable(var_name, var_value) send(0, var_value)