[gd_scene load_steps=25 format=3 uid="uid://wnfi7j3dmjl"]

[ext_resource type="PackedScene" uid="uid://1rwj4eq63xgb" path="res://scenes/tutorial_scenes/tutorial_scene_base.tscn" id="1_ef0x7"]
[ext_resource type="VoxelGIData" uid="uid://nhfw6m8oc1hi" path="res://scenes/tutorial_scenes/tutorial_scene_2.VoxelGI_data.res" id="2_eyu4w"]
[ext_resource type="PackedScene" uid="uid://bifpsyvpcem3a" path="res://scenes/manipulator/manipulator.tscn" id="3_00eva"]
[ext_resource type="PackedScene" uid="uid://ccmx5v2601k8q" path="res://scenes/manipulator/visual_attractor_sphere.tscn" id="4_5h7mx"]
[ext_resource type="Script" path="res://scenes/target.gd" id="5_nrhx8"]
[ext_resource type="AudioStream" uid="uid://cqb1bo72232vs" path="res://assets/Sounds/03 highpiano.ogg" id="6_8qjxs"]
[ext_resource type="AudioStream" uid="uid://cv0f1tu5pac60" path="res://assets/Sounds/02 midpiano.ogg" id="7_bmi33"]

[sub_resource type="Gradient" id="Gradient_0ygfi"]
colors = PackedColorArray(0.720471, 0.182584, 0.797749, 1, 1, 1, 3, 1)

[sub_resource type="GradientTexture1D" id="GradientTexture1D_e428v"]
gradient = SubResource("Gradient_0ygfi")
use_hdr = true

[sub_resource type="Curve" id="Curve_g0jsu"]
_data = [Vector2(0, 1), 0.0, 0.0, 0, 0, Vector2(0.905229, 0.968574), 0.0, 0.0, 0, 0, Vector2(1, 0), 0.0, 0.0, 0, 0]
point_count = 3

[sub_resource type="CurveTexture" id="CurveTexture_qnerq"]
curve = SubResource("Curve_g0jsu")

[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_c7gdv"]
resource_local_to_scene = true
emission_shape = 3
emission_box_extents = Vector3(0.1, 0.1, 0.1)
spread = 0.0
initial_velocity_min = 0.3
initial_velocity_max = 0.3
gravity = Vector3(0, 0, 0)
damping_min = 0.05
damping_max = 0.05
scale_max = 1.3
scale_curve = SubResource("CurveTexture_qnerq")
color = Color(0.288256, 0.558565, 0.665093, 1)
color_ramp = SubResource("GradientTexture1D_e428v")
hue_variation_min = -0.1
hue_variation_max = 0.1
turbulence_noise_scale = 6.228
turbulence_influence_min = 0.01
turbulence_influence_max = 0.01
collision_mode = 1
collision_friction = 0.06
collision_bounce = 1.0

[sub_resource type="TextMesh" id="TextMesh_ck5ya"]
text = "Grab With
Both Hands
To Scale
And Rotate"
horizontal_alignment = 0
line_spacing = -5.0
pixel_size = 0.02
depth = 0.2

[sub_resource type="TextMesh" id="TextMesh_0e4fw"]
text = "When Holding
The Ball,
Use The Joystick
To Change
Its Size"
horizontal_alignment = 0
line_spacing = -5.0
pixel_size = 0.02
depth = 0.2

[sub_resource type="PrismMesh" id="PrismMesh_vebbs"]
size = Vector3(0.2, 0.2, 0.2)

[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_6o2tn"]
emission_enabled = true
emission = Color(0.208505, 0.70691, 0.626474, 1)

[sub_resource type="BoxShape3D" id="BoxShape3D_5cvp1"]

[sub_resource type="BoxMesh" id="BoxMesh_swij7"]

[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_w1uvt"]
transparency = 1
albedo_color = Color(1, 1, 1, 0.3)
emission_enabled = true
emission = Color(1, 1, 1, 1)
emission_energy_multiplier = 0.61
rim = 0.38
refraction_scale = 0.88

[sub_resource type="BoxMesh" id="BoxMesh_cvybi"]

[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_jqpsb"]
transparency = 1
albedo_color = Color(1, 1, 1, 0.3)
emission_enabled = true
emission = Color(1, 1, 1, 1)
emission_energy_multiplier = 0.61
rim = 0.38
refraction_scale = 0.88

[sub_resource type="TextMesh" id="TextMesh_gt0jy"]
text = "the
target"
horizontal_alignment = 0
line_spacing = -7.0
pixel_size = 0.02
depth = 0.2

[sub_resource type="TextMesh" id="TextMesh_tfnjp"]
text = "the
2nd
target"
horizontal_alignment = 0
line_spacing = -7.0
pixel_size = 0.02
depth = 0.2

[sub_resource type="TextMesh" id="TextMesh_jioxp"]
text = "Level Select
Is Behind You"
horizontal_alignment = 0
line_spacing = -5.0
pixel_size = 0.02
depth = 0.2

[node name="TutorialSceneBase" instance=ExtResource("1_ef0x7")]

[node name="VoxelGI" parent="." index="4"]
data = ExtResource("2_eyu4w")

[node name="SpotLight3D" parent="." index="8"]
transform = Transform3D(1, 0, 0, 0, 0.798268, 0.602302, 0, -0.602302, 0.798268, 0, 4.06392, -0.511663)

[node name="GPUParticles3D" parent="." index="10"]
transform = Transform3D(-3.09086e-08, -0.707107, 0.707107, 1, -4.37114e-08, 0, 3.09086e-08, 0.707107, 0.707107, -0.0848585, 0.312401, -3.05504)
lifetime = 2.0
process_material = SubResource("ParticleProcessMaterial_c7gdv")

[node name="GrabTheWorld" type="MeshInstance3D" parent="." index="12"]
transform = Transform3D(0.971367, 0, 0.237584, 0, 1, 0, -0.237584, 0, 0.971367, -3.17345, 0.738311, -2.58001)
mesh = SubResource("TextMesh_ck5ya")
skeleton = NodePath("../VoxelGI")

[node name="WhenHolding" type="MeshInstance3D" parent="." index="13"]
transform = Transform3D(0.943535, 0, -0.331272, 0, 1, 0, 0.331272, 0, 0.943535, 0.779366, 1.00792, -3.22149)
mesh = SubResource("TextMesh_0e4fw")
skeleton = NodePath("../VoxelGI")

[node name="Manipulator1" parent="." index="14" groups=["manipulators"] instance=ExtResource("3_00eva")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.0327194, 1.08087, -3.20292)

[node name="VisualAttractorSphere" parent="Manipulator1" index="4" instance=ExtResource("4_5h7mx")]
transform = Transform3D(1, 0, 0, 0, 0.753862, -0.657033, 0, 0.657033, 0.753862, 0, 0, 0)
strength = 3.0
attenuation = 0.534888
directionality = 1.0
radius = 1.5

[node name="MeshInstance3D" type="MeshInstance3D" parent="Manipulator1/VisualAttractorSphere" index="1"]
transform = Transform3D(1, 0, 0, 0, -4.37114e-08, 1, 0, -1, -4.37114e-08, 0, 0, -0.11962)
mesh = SubResource("PrismMesh_vebbs")
skeleton = NodePath("")
surface_material_override/0 = SubResource("StandardMaterial3D_6o2tn")

[node name="Target1" type="StaticBody3D" parent="." index="15" groups=["targets"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 3.599, -6.182)
script = ExtResource("5_nrhx8")

[node name="CollisionShape3D" type="CollisionShape3D" parent="Target1" index="0"]
shape = SubResource("BoxShape3D_5cvp1")

[node name="MeshInstance3D" type="MeshInstance3D" parent="Target1" index="1"]
layers = 4
mesh = SubResource("BoxMesh_swij7")
skeleton = NodePath("../..")
surface_material_override/0 = SubResource("StandardMaterial3D_w1uvt")

[node name="AudioStreamPlayer3D" type="AudioStreamPlayer3D" parent="Target1" index="2"]
stream = ExtResource("6_8qjxs")
volume_db = -80.0
autoplay = true

[node name="Target2" type="StaticBody3D" parent="." index="16" groups=["targets"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.85112, -4.45978)
script = ExtResource("5_nrhx8")

[node name="CollisionShape3D" type="CollisionShape3D" parent="Target2" index="0"]
shape = SubResource("BoxShape3D_5cvp1")

[node name="MeshInstance3D" type="MeshInstance3D" parent="Target2" index="1"]
layers = 4
mesh = SubResource("BoxMesh_cvybi")
skeleton = NodePath("../..")
surface_material_override/0 = SubResource("StandardMaterial3D_jqpsb")

[node name="AudioStreamPlayer3D" type="AudioStreamPlayer3D" parent="Target2" index="2"]
stream = ExtResource("7_bmi33")
volume_db = -80.0
autoplay = true

[node name="TheTarget" type="MeshInstance3D" parent="." index="17"]
transform = Transform3D(0.996969, 0, -0.0777979, 0, 1, 0, 0.0777979, 0, 0.996969, -1.65468, 2.00334, -4.59936)
mesh = SubResource("TextMesh_gt0jy")

[node name="TheTarget2" type="MeshInstance3D" parent="." index="18"]
transform = Transform3D(0.996969, 0, -0.0777979, 0, 1, 0, 0.0777979, 0, 0.996969, -1.53939, 3.57846, -6.22573)
mesh = SubResource("TextMesh_tfnjp")

[node name="LevelSelect" type="MeshInstance3D" parent="." index="20"]
transform = Transform3D(0.933054, 0, 0.359736, 0, 1, 0, -0.359736, 0, 0.933054, -3.68075, 2.72605, -4.01316)
mesh = SubResource("TextMesh_jioxp")
