@abstract extends Machine class_name Drone @export_category("Dash") @export var dodge_cd := 5.0 @export var dodge_speed := 650.0 @export var dodge_duration := 0.18 var dodge_duration_timer : Timer func _ready() -> void: _animate(self.get_child(4,false),"walking") add_on_slots = 1 for a in self.get_children() : if a.name == "DodgeDurationTimer" : dodge_duration_timer = a for a in MachineGlobals.drone_body_slots : machine_upgrades.set(a,null) animation_state_machine = MachineGlobals.regular_states.IDLING func class_ability() -> float: #do dash animation_state_machine = MachineGlobals.regular_states.DASHING return dodge_cd func listen_to_animation_signals(next_anim_state : MachineGlobals.regular_states) -> void: match next_anim_state : MachineGlobals.regular_states.IDLING : for a : BodyPart in _get_body_parts() : _animate(a,"Idle") MachineGlobals.regular_states.WALKING : for a : AnimatedSprite2D in _get_body_parts() : _animate(a,"Walking") MachineGlobals.regular_states.DASHING : for a : AnimatedSprite2D in _get_body_parts() : _animate(a,"Dashing") MachineGlobals.regular_states.INTERACTING : for a : AnimatedSprite2D in _get_body_parts() : _animate(a,"Interact")