[gd_scene load_steps=9 format=2] [ext_resource path="res://src/Player/Hook/Hook.gd" type="Script" id=1] [ext_resource path="res://src/Player/Hook/Arrow.tscn" type="PackedScene" id=2] [ext_resource path="res://src/Player/Hook/TargetCircle.gd" type="Script" id=3] [ext_resource path="res://src/Player/Hook/SnapDetector.tscn" type="PackedScene" id=4] [ext_resource path="res://src/Main/StateMachine/StateMachine.gd" type="Script" id=5] [ext_resource path="res://src/Player/Hook/States/Aim.gd" type="Script" id=6] [ext_resource path="res://src/Player/Hook/States/Fire.gd" type="Script" id=7] [sub_resource type="GDScript" id=1] script/source = "extends RayCast2D var length = cast_to.length()" [node name="Hook" type="Position2D"] script = ExtResource( 1 ) [node name="RayCast2D" type="RayCast2D" parent="."] cast_to = Vector2( 460, 0 ) collision_mask = 6 script = SubResource( 1 ) [node name="Arrow" parent="." instance=ExtResource( 2 )] editor/display_folded = true visible = false [node name="TargetCircle" type="Node2D" parent="."] script = ExtResource( 3 ) offset = Vector2( 120, 0 ) [node name="SnapDetector" parent="." instance=ExtResource( 4 )] [node name="Cooldown" type="Timer" parent="."] process_mode = 0 wait_time = 0.2 one_shot = true [node name="StateMachine" type="Node" parent="."] script = ExtResource( 5 ) initial_state = NodePath("Aim") [node name="Aim" type="Node" parent="StateMachine"] script = ExtResource( 6 ) [node name="Fire" type="Node" parent="StateMachine/Aim"] script = ExtResource( 7 ) [editable path="Arrow"]