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("lunatic_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,240,256,80)) (self.find_parent("StartMenu").get_node("AnimationPlayer2") as AnimationPlayer).play("lunatic_select_ani") pass func deselected(): self.set_region_rect(Rect2(256,240,256,80)) (self.find_parent("StartMenu").get_node("AnimationPlayer2") as AnimationPlayer).play_backwards("lunatic_select_ani") pass var calledSelected = false var calledDeselected = false # Called every frame. 'delta' is the elapsed time since the previous frame. 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")