[gd_scene load_steps=40 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/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"] [ext_resource type="PackedScene" uid="uid://fht6j87o8ecr" path="res://src/ui/projectile_arc/projectile_arc.tscn" id="4_ry2ho"] [ext_resource type="PackedScene" uid="uid://dbdul15c4oblg" path="res://src/ui/projected_target.tscn" id="6_mynqj"] [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, 0, 0, 0, 0.707107, -0.707107, 0, 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, 0, 0, 0, 0.181173, -0.676148, 0, 0.676148, 0.181173, 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="IronRef" type="RayCast3D" parent="Direction"] unique_name_in_owner = true transform = Transform3D(0.7, 0, 0, 0, 0.449952, -0.536231, 0, 0.536231, 0.449952, 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(0.8, 0, 0, 0, 0.8, 0, 0, 0, 0.8, 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 far = 8192.0 [node name="ArrowPivot" type="Node3D" parent="."] unique_name_in_owner = true transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.1, 0) [node name="Arrow" type="Node3D" parent="ArrowPivot"] unique_name_in_owner = true transform = Transform3D(0.001, 0, 0, 0, 0.001, 0, 0, 0, 0.001, 0, 0, 0) [node name="ArrowAnimation" type="AnimationPlayer" parent="ArrowPivot/Arrow"] unique_name_in_owner = true libraries = { "": SubResource("AnimationLibrary_rw0cf") } autoplay = "show" [node name="DriveArrow" type="Node3D" parent="ArrowPivot/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="ArrowPivot/Arrow/DriveArrow" instance=ExtResource("2_s70wl")] transform = Transform3D(0.2, 0, 0, 0, -1.74846e-08, 0.2, 0, -0.4, -8.74228e-09, 0, 0, -1) loop_animation = 1 [node name="WedgeArrow" type="Node3D" parent="ArrowPivot/Arrow"] unique_name_in_owner = true transform = Transform3D(0.7, 0, 0, 0, 0.181173, -0.676148, 0, 0.676148, 0.181173, 0, 0, 0) visible = false [node name="ArrowMesh" parent="ArrowPivot/Arrow/WedgeArrow" instance=ExtResource("2_s70wl")] transform = Transform3D(0.2, 0, 0, 0, -1.74846e-08, 0.2, 0, -0.4, -8.74228e-09, 0, 0, -1) loop_animation = 1 [node name="IronArrow" type="Node3D" parent="ArrowPivot/Arrow"] unique_name_in_owner = true transform = Transform3D(0.7, 0, 0, 0, 0.449952, -0.536231, 0, 0.536231, 0.449952, 0, 0, 0) visible = false [node name="ArrowMesh" parent="ArrowPivot/Arrow/IronArrow" instance=ExtResource("2_s70wl")] transform = Transform3D(0.2, 0, 0, 0, -1.74846e-08, 0.2, 0, -0.4, -8.74228e-09, 0, 0, -1) loop_animation = 1 [node name="PuttArrow" type="Node3D" parent="ArrowPivot/Arrow"] unique_name_in_owner = true transform = Transform3D(0.8, 0, 0, 0, 0.8, 0, 0, 0, 0.8, 0, 0, 0) visible = false [node name="ArrowMesh" parent="ArrowPivot/Arrow/PuttArrow" instance=ExtResource("2_s70wl")] transform = Transform3D(0.2, 0, 0, 0, -1.74846e-08, 0.2, 0, -0.4, -8.74228e-09, 0, 0, -1) loop_animation = 1 [node name="ShotProjection" parent="ArrowPivot" node_paths=PackedStringArray("excluded_bodies") instance=ExtResource("4_ry2ho")] unique_name_in_owner = true transform = Transform3D(1, 0, 0, 0, 0.707107, -0.707107, 0, 0.707107, 0.707107, 0, -0.02, 0) visible = false initial_speed = 50.0 time_step = 0.01 max_steps = 800 excluded_bodies = [NodePath("../../BallPoint/PhysicsBall")] [node name="ProjectedTarget" parent="ArrowPivot/ShotProjection" instance=ExtResource("6_mynqj")] [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_type_variation = &"ShotFeedback" bbcode_enabled = true text = "[center][wave amp=64][rainbow]woah nice[/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_type_variation = &"ShotFeedback" bbcode_enabled = true text = "[center][tornado radius=16][color=powder_blue]wasted[/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="body_entered" from="BallPoint/PhysicsBall" to="." method="_on_physics_ball_body_entered"] [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"]