extends Sprite2D signal onSelected signal onDeselected func ok(): var characterselect = load("res://characterselect.tscn").instantiate() as Node2D (self.find_parent("StartMenu").get_node("AnimationPlayer") as AnimationPlayer).play_backwards("new_animation") (self.find_parent("StartMenu").get_node("AnimationPlayer2") as AnimationPlayer).play("normal_selected") get_tree().current_scene.add_child(characterselect) # Called when the node enters the scene tree for the first time. func _ready() -> void: onSelected.connect(selected) onDeselected.connect(deselected) func selected(): self.set_region_rect(Rect2(0,80,256,80)) (self.find_parent("StartMenu").get_node("AnimationPlayer2") as AnimationPlayer).play("normal_select_ani") pass func deselected(): self.set_region_rect(Rect2(256,80,256,80)) (self.find_parent("StartMenu").get_node("AnimationPlayer2") as AnimationPlayer).play_backwards("normal_select_ani") pass # Called every frame. 'delta' is the elapsed time since the previous frame. var calledSelected = false var calledDeselected = false func _process(delta: float) -> void: if(self.get_meta("selected") == true && calledSelected==false): emit_signal("onSelected") calledSelected=true calledDeselected=false elif(self.get_meta("selected")==false&& calledDeselected==false): calledSelected=false calledDeselected=true emit_signal("onDeselected")