[gd_scene load_steps=38 format=3 uid="uid://cy7t2tc4y3b4"]

[ext_resource type="Script" path="res://src/player/shot_setup/shot_setup.gd" id="1_r6ei4"]
[ext_resource type="PackedScene" uid="uid://dfttci386ohip" path="res://src/player/physics_ball/physics_ball.tscn" id="2_1i5j5"]
[ext_resource type="PackedScene" uid="uid://c2k88ns0h5ie1" path="res://src/ui/arrow.tscn" id="2_s70wl"]
[ext_resource type="PackedScene" uid="uid://1s3gywmoi20e" path="res://src/characters/gfolf_girl/gfolf_girl.tscn" id="3_e4aur"]
[ext_resource type="PackedScene" uid="uid://445qd7m4qe2j" path="res://src/player/shot_setup/club_selector/club_selector.tscn" id="4_56ape"]

[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_lnol1"]
albedo_color = Color(0, 0.537255, 1, 1)

[sub_resource type="CylinderMesh" id="CylinderMesh_ql2ui"]
material = SubResource("StandardMaterial3D_lnol1")
top_radius = 0.02
bottom_radius = 0.02
height = 1.0

[sub_resource type="Animation" id="Animation_ug2a7"]
length = 0.001
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath(".:visible")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath(".:scale")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [Vector3(0.001, 0.001, 0.001)]
}

[sub_resource type="Animation" id="Animation_3obkd"]
resource_name = "hide"
length = 0.42
step = 0.01
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath(".:visible")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0, 0.42),
"transitions": PackedFloat32Array(1, 1),
"update": 1,
"values": [true, false]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath(".:scale")
tracks/1/interp = 2
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0, 0.42),
"transitions": PackedFloat32Array(1.618, 1),
"update": 0,
"values": [Vector3(1, 1, 1), Vector3(0.001, 0.001, 0.001)]
}

[sub_resource type="Animation" id="Animation_dku72"]
resource_name = "show"
length = 0.42
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath(".:visible")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath(".:scale")
tracks/1/interp = 2
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0, 0.233333, 0.366667, 0.42),
"transitions": PackedFloat32Array(0.618, 1, 1, 1),
"update": 0,
"values": [Vector3(0.001, 0.001, 0.001), Vector3(1.1, 1.1, 1.1), Vector3(0.95, 0.95, 0.95), Vector3(1, 1, 1)]
}

[sub_resource type="AnimationLibrary" id="AnimationLibrary_rw0cf"]
_data = {
"RESET": SubResource("Animation_ug2a7"),
"hide": SubResource("Animation_3obkd"),
"show": SubResource("Animation_dku72")
}

[sub_resource type="Animation" id="Animation_oks0y"]
length = 0.001
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath(".:position")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [Vector3(0, 0, 0)]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath(".:fov")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [75.0]
}

[sub_resource type="Animation" id="Animation_e65hh"]
resource_name = "shot"
length = 4.0
step = 0.01
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath(".:position")
tracks/0/interp = 2
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0, 0.1, 0.12, 4),
"transitions": PackedFloat32Array(0.618, 1, 1.618, 1),
"update": 0,
"values": [Vector3(0, 0, 0), Vector3(0, 1, -3), Vector3(0, 1, -3), Vector3(0, 0, 0)]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath(".:fov")
tracks/1/interp = 2
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0, 0.1, 0.12, 4),
"transitions": PackedFloat32Array(0.618, 1, 1.618, 1),
"update": 0,
"values": [75.0, 85.0, 85.0, 75.0]
}
tracks/2/type = "method"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("%Direction/..")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(2),
"transitions": PackedFloat32Array(1),
"values": [{
"args": [],
"method": &"start_shot_track"
}]
}

[sub_resource type="Animation" id="Animation_u8k07"]
resource_name = "swing_delay"
length = 0.2
step = 0.01
tracks/0/type = "method"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("%Direction/..")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0.18),
"transitions": PackedFloat32Array(1),
"values": [{
"args": [],
"method": &"finish_downswing"
}]
}

[sub_resource type="AnimationLibrary" id="AnimationLibrary_u78hq"]
_data = {
"RESET": SubResource("Animation_oks0y"),
"shoot": SubResource("Animation_e65hh"),
"swing_delay": SubResource("Animation_u8k07")
}

[sub_resource type="Animation" id="Animation_3xds6"]
resource_name = "RESET"
length = 0.001
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath(".:visible")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath(".:visible_ratio")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [1.0]
}
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath(".:rotation")
tracks/2/interp = 3
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [7.31612e-10]
}
tracks/3/type = "bezier"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath(".:anchor_top")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
"handle_modes": PackedInt32Array(0),
"points": PackedFloat32Array(0.5, -0.25, 0, 0.25, 0),
"times": PackedFloat32Array(0)
}
tracks/4/type = "bezier"
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/path = NodePath(".:anchor_bottom")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = {
"handle_modes": PackedInt32Array(0),
"points": PackedFloat32Array(0.5, -0.25, 0, 0.25, 0),
"times": PackedFloat32Array(0)
}

[sub_resource type="Animation" id="Animation_cwotn"]
resource_name = "display"
length = 2.4
step = 0.1
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath(".:visible")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0, 2.4),
"transitions": PackedFloat32Array(1, 1),
"update": 1,
"values": [true, false]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath(".:visible_ratio")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0, 0.2),
"transitions": PackedFloat32Array(1, 1),
"update": 0,
"values": [0.0, 1.0]
}
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath(".:rotation")
tracks/2/interp = 3
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0, 2, 2.4),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [7.31612e-10, 7.31612e-10, 0.174533]
}
tracks/3/type = "bezier"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath(".:anchor_top")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
"handle_modes": PackedInt32Array(0, 0, 0),
"points": PackedFloat32Array(0.5, -0.25, 0, 0.5, -0.0548477, 0.5, -0.4, 0.0593877, 0.233401, -0.456136, 1.25, -0.25, 0, 0.25, 0),
"times": PackedFloat32Array(0, 2, 2.4)
}
tracks/4/type = "bezier"
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/path = NodePath(".:anchor_bottom")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = {
"handle_modes": PackedInt32Array(0, 0, 0),
"points": PackedFloat32Array(0.5, -0.25, 0, 0.5, -0.055, 0.5, -0.4, 0.059, 0.233, -0.456, 1.25, -0.25, 0, 0.25, 0),
"times": PackedFloat32Array(0, 2, 2.4)
}

[sub_resource type="AnimationLibrary" id="AnimationLibrary_2a0gn"]
_data = {
"RESET": SubResource("Animation_3xds6"),
"display": SubResource("Animation_cwotn")
}

[sub_resource type="Animation" id="Animation_2gt87"]
resource_name = "RESET"
length = 0.001
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath(".:visible")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath(".:visible_ratio")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [1.0]
}
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath(".:rotation")
tracks/2/interp = 3
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [7.31612e-10]
}
tracks/3/type = "bezier"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath(".:anchor_top")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
"handle_modes": PackedInt32Array(0),
"points": PackedFloat32Array(0.5, -0.25, 0, 0.25, 0),
"times": PackedFloat32Array(0)
}
tracks/4/type = "bezier"
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/path = NodePath(".:anchor_bottom")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = {
"handle_modes": PackedInt32Array(0),
"points": PackedFloat32Array(0.5, -0.25, 0, 0.25, 0),
"times": PackedFloat32Array(0)
}

[sub_resource type="Animation" id="Animation_g52q7"]
resource_name = "display"
length = 3.4
step = 0.1
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath(".:visible")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0, 3.4),
"transitions": PackedFloat32Array(1, 1),
"update": 1,
"values": [true, false]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath(".:visible_ratio")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0, 0.4),
"transitions": PackedFloat32Array(1, 1),
"update": 0,
"values": [0.0, 1.0]
}
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath(".:rotation")
tracks/2/interp = 3
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0, 3, 3.4),
"transitions": PackedFloat32Array(1, 0.618, 1),
"update": 0,
"values": [7.31612e-10, 7.31612e-10, -2.96706]
}
tracks/3/type = "bezier"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath(".:anchor_top")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
"handle_modes": PackedInt32Array(0, 0, 0),
"points": PackedFloat32Array(0.5, -0.25, 0, 0.5, -0.0548477, 0.5, -0.4, 0.0593877, 0.233401, -0.456136, 1.25, -0.25, 0, 0.25, 0),
"times": PackedFloat32Array(0, 3, 3.4)
}
tracks/4/type = "bezier"
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/path = NodePath(".:anchor_bottom")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = {
"handle_modes": PackedInt32Array(0, 0, 0),
"points": PackedFloat32Array(0.5, -0.25, 0, 0.5, -0.055, 0.5, -0.4, 0.059, 0.233, -0.456, 1.25, -0.25, 0, 0.25, 0),
"times": PackedFloat32Array(0, 3, 3.4)
}
tracks/5/type = "method"
tracks/5/imported = false
tracks/5/enabled = true
tracks/5/path = NodePath("../..")
tracks/5/interp = 1
tracks/5/loop_wrap = true
tracks/5/keys = {
"times": PackedFloat32Array(3.4),
"transitions": PackedFloat32Array(1),
"values": [{
"args": [],
"method": &"return_ball"
}]
}

[sub_resource type="AnimationLibrary" id="AnimationLibrary_gbnnr"]
_data = {
"RESET": SubResource("Animation_2gt87"),
"display": SubResource("Animation_g52q7")
}

[sub_resource type="Animation" id="Animation_pk1s7"]
length = 0.001
tracks/0/type = "bezier"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath(".:value")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"handle_modes": PackedInt32Array(0),
"points": PackedFloat32Array(0, -0.25, 0, 0.25, 0),
"times": PackedFloat32Array(0)
}

[sub_resource type="Animation" id="Animation_67gmp"]
resource_name = "fill"
length = 1.618
tracks/0/type = "bezier"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath(".:value")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"handle_modes": PackedInt32Array(0, 0),
"points": PackedFloat32Array(0, -0.25, 0, 0.233333, 0.0884774, 1, -0.267469, -0.483539, 0.25, 0),
"times": PackedFloat32Array(0, 1.618)
}

[sub_resource type="AnimationLibrary" id="AnimationLibrary_coah5"]
_data = {
"RESET": SubResource("Animation_pk1s7"),
"fill": SubResource("Animation_67gmp")
}

[sub_resource type="Animation" id="Animation_noa0w"]
length = 0.001
tracks/0/type = "bezier"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("%CurveBar:value")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"handle_modes": PackedInt32Array(0),
"points": PackedFloat32Array(0, -0.25, 0, 0.25, 0),
"times": PackedFloat32Array(0)
}

[sub_resource type="Animation" id="Animation_uo6s7"]
resource_name = "fill"
length = 0.618
loop_mode = 2
tracks/0/type = "bezier"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("%CurveBar:value")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"handle_modes": PackedInt32Array(0, 0),
"points": PackedFloat32Array(-1, -0.25, 0, 0.3, 0, 1, -0.3, 0, 0.25, 0),
"times": PackedFloat32Array(0, 0.618)
}

[sub_resource type="AnimationLibrary" id="AnimationLibrary_dicse"]
_data = {
"RESET": SubResource("Animation_noa0w"),
"fill": SubResource("Animation_uo6s7")
}

[sub_resource type="Animation" id="Animation_3cn2c"]
length = 0.001
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("%ClubSelector:rotation")
tracks/0/interp = 4
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [0.0]
}

[sub_resource type="Animation" id="Animation_dt1yq"]
resource_name = "hide"
length = 0.4
step = 0.02
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("%ClubSelector:rotation")
tracks/0/interp = 4
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0, 0.1, 0.4),
"transitions": PackedFloat32Array(1.618, 1.618, 1),
"update": 0,
"values": [0.0, 0.0872665, -1.5708]
}

[sub_resource type="Animation" id="Animation_0maif"]
resource_name = "show"
length = 0.4
step = 0.02
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("%ClubSelector:rotation")
tracks/0/interp = 4
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0, 0.34, 0.4),
"transitions": PackedFloat32Array(1.618, 1.618, 1),
"update": 0,
"values": [-1.5708, 0.0872665, 0.0]
}

[sub_resource type="AnimationLibrary" id="AnimationLibrary_c3i4w"]
_data = {
"RESET": SubResource("Animation_3cn2c"),
"hide": SubResource("Animation_dt1yq"),
"show": SubResource("Animation_0maif")
}

[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_8uxnp"]
animation = &"hide"

[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_v05eu"]
animation = &"show"

[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_28a4x"]
advance_mode = 2

[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_bj7v0"]
switch_mode = 2

[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_xpwgd"]
switch_mode = 2

[sub_resource type="AnimationNodeStateMachine" id="AnimationNodeStateMachine_osrbp"]
states/hidden/node = SubResource("AnimationNodeAnimation_8uxnp")
states/hidden/position = Vector2(592, 100)
states/visible/node = SubResource("AnimationNodeAnimation_v05eu")
states/visible/position = Vector2(364, 100)
transitions = ["Start", "visible", SubResource("AnimationNodeStateMachineTransition_28a4x"), "visible", "hidden", SubResource("AnimationNodeStateMachineTransition_bj7v0"), "hidden", "visible", SubResource("AnimationNodeStateMachineTransition_xpwgd")]
graph_offset = Vector2(-309, -132)

[node name="ShotSetup" type="Node3D"]
script = ExtResource("1_r6ei4")

[node name="BallPoint" type="Node3D" parent="."]
unique_name_in_owner = true
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.08, 0)

[node name="PhysicsBall" parent="BallPoint" instance=ExtResource("2_1i5j5")]
unique_name_in_owner = true
transform = Transform3D(1, 0, 0, 0, -4.37114e-08, -1, 0, 1, -4.37114e-08, 0, 0, 0)
freeze = true

[node name="BallImpulseDebug" type="Node3D" parent="BallPoint"]
unique_name_in_owner = true
visible = false

[node name="MeshInstance3D" type="MeshInstance3D" parent="BallPoint/BallImpulseDebug"]
transform = Transform3D(1, 0, 0, 0, -4.37114e-08, -1, 0, 1, -4.37114e-08, 0, 0, -0.5)
mesh = SubResource("CylinderMesh_ql2ui")
skeleton = NodePath("../..")

[node name="PlayerPivot" type="Node3D" parent="."]
unique_name_in_owner = true

[node name="GfolfGirl" parent="PlayerPivot" instance=ExtResource("3_e4aur")]
transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, -0.555968, 0, 0.0999683)

[node name="Direction" type="Node3D" parent="."]
unique_name_in_owner = true

[node name="DriveRef" type="RayCast3D" parent="Direction"]
unique_name_in_owner = true
transform = Transform3D(-1, 6.18172e-08, -6.18172e-08, 0, 0.707107, 0.707107, 8.74228e-08, 0.707107, -0.707107, 0, 0.08, 0)
enabled = false
target_position = Vector3(0, 0, 1)
collision_mask = 0
collide_with_bodies = false
debug_shape_thickness = 4

[node name="WedgeRef" type="RayCast3D" parent="Direction"]
unique_name_in_owner = true
transform = Transform3D(-0.7, -5.29972e-08, 3.0598e-08, 0, 0.35, 0.606218, -6.11959e-08, 0.606218, -0.35, 0, 0.08, 0)
enabled = false
target_position = Vector3(0, 0, 1)
collision_mask = 0
collide_with_bodies = false
debug_shape_thickness = 4

[node name="PuttRef" type="RayCast3D" parent="Direction"]
unique_name_in_owner = true
transform = Transform3D(-1, 0, -1.50996e-07, 0, 1, 0, 1.50996e-07, 0, -1, 0, 0.08, 0)
enabled = false
target_position = Vector3(0, 0, 1)
collision_mask = 0
collide_with_bodies = false
debug_shape_thickness = 4

[node name="Elevation" type="Node3D" parent="Direction"]
unique_name_in_owner = true
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.9, 0)

[node name="Pitch" type="Node3D" parent="Direction/Elevation"]
unique_name_in_owner = true
transform = Transform3D(1, 0, 0, 0, 0.907777, 0.419452, 0, -0.419452, 0.907777, 0, 0, 0)

[node name="Zoom" type="Node3D" parent="Direction/Elevation/Pitch"]
unique_name_in_owner = true
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 6)

[node name="Camera" type="Camera3D" parent="Direction/Elevation/Pitch/Zoom"]
unique_name_in_owner = true
transform = Transform3D(1, 0, 0, 0, 1, 2.98023e-08, 0, -2.98023e-08, 1, 0, 0, 0)
current = true

[node name="Arrow" type="Node3D" parent="."]
unique_name_in_owner = true
transform = Transform3D(0.001, 0, 0, 0, 0.001, 0, 0, 0, 0.001, 0, 0.1, 0)

[node name="ArrowAnimation" type="AnimationPlayer" parent="Arrow"]
unique_name_in_owner = true
libraries = {
"": SubResource("AnimationLibrary_rw0cf")
}
autoplay = "show"

[node name="DriveArrow" type="Node3D" parent="Arrow"]
unique_name_in_owner = true
transform = Transform3D(1, 0, 0, 0, 0.707107, 0.707107, 0, -0.707107, 0.707107, 0, 0, 0)
visible = false

[node name="ArrowMesh" parent="Arrow/DriveArrow" instance=ExtResource("2_s70wl")]
transform = Transform3D(0.2, 0, 0, 0, 0.4, 0, 0, 0, 0.2, 0, 1, 0)
loop_animation = 1

[node name="PuttArrow" type="Node3D" parent="Arrow"]
unique_name_in_owner = true
transform = Transform3D(1, 0, 0, 0, -4.37114e-08, 1, 0, -1, -4.37114e-08, 0, 0, 0)
visible = false

[node name="ArrowMesh" parent="Arrow/PuttArrow" instance=ExtResource("2_s70wl")]
transform = Transform3D(0.2, 0, 0, 0, 0.4, 0, 0, 0, 0.2, 0, 1, 0)
loop_animation = 1

[node name="ShotAnimation" type="AnimationPlayer" parent="."]
unique_name_in_owner = true
root_node = NodePath("../Direction/Elevation/Pitch/Zoom/Camera")
libraries = {
"": SubResource("AnimationLibrary_u78hq")
}

[node name="ShotUI" type="Control" parent="."]
top_level = true
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
mouse_filter = 1

[node name="WoahNiceFeedback" type="RichTextLabel" parent="ShotUI"]
visible = false
custom_minimum_size = Vector2(1200, 0)
layout_mode = 1
anchors_preset = -1
anchor_left = 0.5
anchor_top = 0.5
anchor_right = 0.5
anchor_bottom = 0.5
offset_left = -350.0
offset_top = -66.0
offset_right = 350.0
offset_bottom = 66.0
grow_horizontal = 2
grow_vertical = 2
mouse_filter = 2
theme_override_colors/font_shadow_color = Color(0, 0, 0, 1)
theme_override_constants/shadow_offset_y = 4
theme_override_constants/shadow_offset_x = 6
theme_override_font_sizes/bold_italics_font_size = 168
bbcode_enabled = true
text = "[center][wave][rainbow][i][b]WOAH NICE[/b][/i][/rainbow][/wave][/center]"
fit_content = true
autowrap_mode = 0
visible_characters_behavior = 1

[node name="NiceAnimation" type="AnimationPlayer" parent="ShotUI/WoahNiceFeedback"]
unique_name_in_owner = true
libraries = {
"": SubResource("AnimationLibrary_2a0gn")
}

[node name="WastedFeedback" type="RichTextLabel" parent="ShotUI"]
visible = false
custom_minimum_size = Vector2(1400, 0)
layout_mode = 1
anchors_preset = -1
anchor_left = 0.5
anchor_top = 0.5
anchor_right = 0.5
anchor_bottom = 0.5
offset_left = -350.0
offset_top = -66.0
offset_right = 350.0
offset_bottom = 66.0
grow_horizontal = 2
grow_vertical = 2
pivot_offset = Vector2(100, 115)
mouse_filter = 2
theme_override_colors/font_shadow_color = Color(0, 0, 0, 1)
theme_override_constants/shadow_offset_y = 4
theme_override_constants/shadow_offset_x = 6
theme_override_font_sizes/bold_italics_font_size = 168
bbcode_enabled = true
text = "[center][tornado radius=20][color=powder_blue][i][b]WASTED[/b][/i][/color][/tornado][/center]"
fit_content = true
autowrap_mode = 0
visible_characters_behavior = 1

[node name="WastedAnimation" type="AnimationPlayer" parent="ShotUI/WastedFeedback"]
unique_name_in_owner = true
libraries = {
"": SubResource("AnimationLibrary_gbnnr")
}

[node name="ShotGauges" type="Control" parent="ShotUI"]
layout_mode = 1
anchor_left = 0.4
anchor_top = 0.3
anchor_right = 0.6
anchor_bottom = 0.85
grow_horizontal = 2
grow_vertical = 2
mouse_filter = 1

[node name="PowerGauge" type="Control" parent="ShotUI/ShotGauges"]
layout_mode = 1
anchor_left = 0.5
anchor_top = 0.382
anchor_right = 0.5
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
mouse_filter = 1

[node name="PowerBar" type="ProgressBar" parent="ShotUI/ShotGauges/PowerGauge"]
unique_name_in_owner = true
visible = false
custom_minimum_size = Vector2(30, 0)
layout_mode = 1
anchors_preset = 13
anchor_left = 0.5
anchor_right = 0.5
anchor_bottom = 1.0
offset_left = -2.0
offset_right = 2.0
grow_horizontal = 2
grow_vertical = 2
mouse_filter = 1
max_value = 1.0
fill_mode = 2

[node name="PowerAnimation" type="AnimationPlayer" parent="ShotUI/ShotGauges/PowerGauge"]
unique_name_in_owner = true
root_node = NodePath("../PowerBar")
libraries = {
"": SubResource("AnimationLibrary_coah5")
}

[node name="CurveGauge" type="Control" parent="ShotUI/ShotGauges"]
layout_mode = 1
anchor_top = 0.25
anchor_right = 1.0
anchor_bottom = 0.25
grow_horizontal = 2
grow_vertical = 2
mouse_filter = 1

[node name="CurveBar" type="ProgressBar" parent="ShotUI/ShotGauges/CurveGauge"]
unique_name_in_owner = true
visible = false
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
offset_top = -13.5
offset_bottom = 13.5
grow_horizontal = 2
grow_vertical = 2
min_value = -1.0
max_value = 1.0

[node name="CurveAnimation" type="AnimationPlayer" parent="ShotUI/ShotGauges/CurveGauge"]
unique_name_in_owner = true
libraries = {
"": SubResource("AnimationLibrary_dicse")
}

[node name="GaugeFlasher" type="AnimationPlayer" parent="ShotUI/ShotGauges"]
unique_name_in_owner = true

[node name="ClubSelector" parent="ShotUI" instance=ExtResource("4_56ape")]
unique_name_in_owner = true
layout_mode = 1
anchors_preset = 0
anchor_right = 0.0
anchor_bottom = 0.0
offset_left = 50.0
offset_top = 50.0
offset_right = 50.0
offset_bottom = 50.0
grow_horizontal = 1
grow_vertical = 1
pivot_offset = Vector2(-400, 0)

[node name="HUDAnimation" type="AnimationPlayer" parent="ShotUI"]
libraries = {
"": SubResource("AnimationLibrary_c3i4w")
}

[node name="HUDStateMachine" type="AnimationTree" parent="ShotUI"]
unique_name_in_owner = true
root_node = NodePath("%HUDStateMachine/..")
tree_root = SubResource("AnimationNodeStateMachine_osrbp")
anim_player = NodePath("../HUDAnimation")

[connection signal="entered_water" from="BallPoint/PhysicsBall" to="." method="_on_ball_entered_water"]
[connection signal="sleeping_state_changed" from="BallPoint/PhysicsBall" to="." method="_on_physics_ball_sleeping_state_changed"]
