2025-10-29 21:40:15 +00:00
|
|
|
[gd_scene load_steps=12 format=3 uid="uid://bw47g00bi710i"]
|
|
|
|
|
|
|
|
|
|
[ext_resource type="PackedScene" uid="uid://c0i4ydmxtxfho" path="res://base-environments/youth_room/import/youth_room.glb" id="1_w4p0y"]
|
|
|
|
|
[ext_resource type="Texture2D" uid="uid://dp1bv446sk2xf" path="res://addons/kenney_particle_pack/flare_01.png" id="2_ipdak"]
|
|
|
|
|
|
|
|
|
|
[sub_resource type="GDScript" id="GDScript_w4p0y"]
|
2025-12-08 17:30:02 +00:00
|
|
|
script/source = "
|
2025-10-29 21:40:15 +00:00
|
|
|
extends Node3D
|
|
|
|
|
|
|
|
|
|
var has_stage
|
|
|
|
|
|
2025-12-08 17:30:02 +00:00
|
|
|
#@export_tool_button(\"Play Chest Animation\") var play_action = play_chest_animation
|
2025-10-29 21:40:15 +00:00
|
|
|
|
|
|
|
|
func _ready() -> void:
|
|
|
|
|
if not Engine.is_editor_hint():
|
|
|
|
|
Scenes.sign_up_for_sequence(play_chest_animation, Scenes.id.YOUTH_VOICE_TRAINING, 0)
|
|
|
|
|
|
|
|
|
|
func play_chest_animation(_id):
|
|
|
|
|
$AnimationPlayer.play(\"chest_reveal\")
|
|
|
|
|
$SecondaryAnimation.play(\"chest_reveal\")
|
|
|
|
|
await $AnimationPlayer.animation_finished
|
|
|
|
|
Scenes.continue_sequence(self)
|
|
|
|
|
"
|
|
|
|
|
|
|
|
|
|
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_ipdak"]
|
|
|
|
|
albedo_color = Color(0.72420764, 0.5294575, 0.20879507, 1)
|
|
|
|
|
metallic = 0.5
|
|
|
|
|
roughness = 0.38
|
|
|
|
|
rim_enabled = true
|
|
|
|
|
subsurf_scatter_strength = 1.0
|
|
|
|
|
backlight_enabled = true
|
|
|
|
|
backlight = Color(1, 1, 1, 1)
|
|
|
|
|
|
|
|
|
|
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_vutxw"]
|
|
|
|
|
blend_mode = 1
|
|
|
|
|
shading_mode = 0
|
|
|
|
|
vertex_color_use_as_albedo = true
|
|
|
|
|
albedo_texture = ExtResource("2_ipdak")
|
|
|
|
|
|
|
|
|
|
[sub_resource type="QuadMesh" id="QuadMesh_f3ra1"]
|
|
|
|
|
|
|
|
|
|
[sub_resource type="Gradient" id="Gradient_ks8qg"]
|
|
|
|
|
interpolation_color_space = 1
|
|
|
|
|
offsets = PackedFloat32Array(0, 0.68228406, 1)
|
|
|
|
|
colors = PackedColorArray(0, 0, 0, 1, 1.353256, 1.353256, 1.353256, 1, 0, 0, 0, 1)
|
|
|
|
|
|
|
|
|
|
[sub_resource type="Gradient" id="Gradient_h1m70"]
|
|
|
|
|
offsets = PackedFloat32Array(0, 0.9985359)
|
|
|
|
|
colors = PackedColorArray(0.92, 0.46, 0, 1, 0.82, 0.46125, 0.205, 1)
|
|
|
|
|
|
|
|
|
|
[sub_resource type="Animation" id="Animation_ipdak"]
|
|
|
|
|
length = 0.001
|
|
|
|
|
tracks/0/type = "value"
|
|
|
|
|
tracks/0/imported = false
|
|
|
|
|
tracks/0/enabled = true
|
|
|
|
|
tracks/0/path = NodePath("../room/wooden_crate_01/SpotLight3D:light_energy")
|
|
|
|
|
tracks/0/interp = 1
|
|
|
|
|
tracks/0/loop_wrap = true
|
|
|
|
|
tracks/0/keys = {
|
|
|
|
|
"times": PackedFloat32Array(0),
|
|
|
|
|
"transitions": PackedFloat32Array(1),
|
|
|
|
|
"update": 0,
|
|
|
|
|
"values": [0.0]
|
|
|
|
|
}
|
|
|
|
|
tracks/1/type = "value"
|
|
|
|
|
tracks/1/imported = false
|
|
|
|
|
tracks/1/enabled = true
|
|
|
|
|
tracks/1/path = NodePath("../room/wooden_crate_01/CPUParticles3D:emitting")
|
|
|
|
|
tracks/1/interp = 1
|
|
|
|
|
tracks/1/loop_wrap = true
|
|
|
|
|
tracks/1/keys = {
|
|
|
|
|
"times": PackedFloat32Array(0),
|
|
|
|
|
"transitions": PackedFloat32Array(1),
|
|
|
|
|
"update": 1,
|
|
|
|
|
"values": [false]
|
|
|
|
|
}
|
|
|
|
|
tracks/2/type = "value"
|
|
|
|
|
tracks/2/imported = false
|
|
|
|
|
tracks/2/enabled = true
|
|
|
|
|
tracks/2/path = NodePath("../room/wooden_crate_01/CPUParticles3D:gravity")
|
|
|
|
|
tracks/2/interp = 1
|
|
|
|
|
tracks/2/loop_wrap = true
|
|
|
|
|
tracks/2/keys = {
|
|
|
|
|
"times": PackedFloat32Array(0),
|
|
|
|
|
"transitions": PackedFloat32Array(1),
|
|
|
|
|
"update": 0,
|
|
|
|
|
"values": [Vector3(0, 0, 0)]
|
|
|
|
|
}
|
|
|
|
|
tracks/3/type = "value"
|
|
|
|
|
tracks/3/imported = false
|
|
|
|
|
tracks/3/enabled = true
|
|
|
|
|
tracks/3/path = NodePath("../room/wooden_crate_01/CPUParticles3D:linear_accel_max")
|
|
|
|
|
tracks/3/interp = 1
|
|
|
|
|
tracks/3/loop_wrap = true
|
|
|
|
|
tracks/3/keys = {
|
|
|
|
|
"times": PackedFloat32Array(0),
|
|
|
|
|
"transitions": PackedFloat32Array(1),
|
|
|
|
|
"update": 0,
|
|
|
|
|
"values": [0.0]
|
|
|
|
|
}
|
|
|
|
|
tracks/4/type = "value"
|
|
|
|
|
tracks/4/imported = false
|
|
|
|
|
tracks/4/enabled = true
|
|
|
|
|
tracks/4/path = NodePath("../room/wooden_crate_01/CPUParticles3D:linear_accel_min")
|
|
|
|
|
tracks/4/interp = 1
|
|
|
|
|
tracks/4/loop_wrap = true
|
|
|
|
|
tracks/4/keys = {
|
|
|
|
|
"times": PackedFloat32Array(0),
|
|
|
|
|
"transitions": PackedFloat32Array(1),
|
|
|
|
|
"update": 0,
|
|
|
|
|
"values": [0.0]
|
|
|
|
|
}
|
|
|
|
|
tracks/5/type = "value"
|
|
|
|
|
tracks/5/imported = false
|
|
|
|
|
tracks/5/enabled = true
|
|
|
|
|
tracks/5/path = NodePath("../room/wooden_crate_01/wooden_crate_01_001:rotation")
|
|
|
|
|
tracks/5/interp = 1
|
|
|
|
|
tracks/5/loop_wrap = true
|
|
|
|
|
tracks/5/keys = {
|
|
|
|
|
"times": PackedFloat32Array(0),
|
|
|
|
|
"transitions": PackedFloat32Array(1),
|
|
|
|
|
"update": 0,
|
|
|
|
|
"values": [Vector3(0, 0, 0)]
|
|
|
|
|
}
|
|
|
|
|
tracks/6/type = "value"
|
|
|
|
|
tracks/6/imported = false
|
|
|
|
|
tracks/6/enabled = true
|
|
|
|
|
tracks/6/path = NodePath("../room/magazine_01_cover89_003:rotation")
|
|
|
|
|
tracks/6/interp = 1
|
|
|
|
|
tracks/6/loop_wrap = true
|
|
|
|
|
tracks/6/keys = {
|
|
|
|
|
"times": PackedFloat32Array(0),
|
|
|
|
|
"transitions": PackedFloat32Array(1),
|
|
|
|
|
"update": 0,
|
|
|
|
|
"values": [Vector3(-1.5514796, 0.8224505, -2.3806581)]
|
|
|
|
|
}
|
|
|
|
|
tracks/7/type = "value"
|
|
|
|
|
tracks/7/imported = false
|
|
|
|
|
tracks/7/enabled = true
|
|
|
|
|
tracks/7/path = NodePath("../room/magazine_01_cover89_003:scale")
|
|
|
|
|
tracks/7/interp = 1
|
|
|
|
|
tracks/7/loop_wrap = true
|
|
|
|
|
tracks/7/keys = {
|
|
|
|
|
"times": PackedFloat32Array(0),
|
|
|
|
|
"transitions": PackedFloat32Array(1),
|
|
|
|
|
"update": 0,
|
|
|
|
|
"values": [Vector3(2.049358, 1, 1)]
|
|
|
|
|
}
|
|
|
|
|
tracks/8/type = "value"
|
|
|
|
|
tracks/8/imported = false
|
|
|
|
|
tracks/8/enabled = true
|
|
|
|
|
tracks/8/path = NodePath("../room/magazine_01_cover89_003:position")
|
|
|
|
|
tracks/8/interp = 1
|
|
|
|
|
tracks/8/loop_wrap = true
|
|
|
|
|
tracks/8/keys = {
|
|
|
|
|
"times": PackedFloat32Array(0),
|
|
|
|
|
"transitions": PackedFloat32Array(1),
|
|
|
|
|
"update": 0,
|
|
|
|
|
"values": [Vector3(3.0323079, 0.18476419, -1.0096122)]
|
|
|
|
|
}
|
|
|
|
|
tracks/9/type = "value"
|
|
|
|
|
tracks/9/imported = false
|
|
|
|
|
tracks/9/enabled = true
|
|
|
|
|
tracks/9/path = NodePath("../room/magazine_01_cover89_001:position")
|
|
|
|
|
tracks/9/interp = 1
|
|
|
|
|
tracks/9/loop_wrap = true
|
|
|
|
|
tracks/9/keys = {
|
|
|
|
|
"times": PackedFloat32Array(0),
|
|
|
|
|
"transitions": PackedFloat32Array(1),
|
|
|
|
|
"update": 0,
|
|
|
|
|
"values": [Vector3(3.1775897, 0.020989088, -0.9799448)]
|
|
|
|
|
}
|
|
|
|
|
tracks/10/type = "value"
|
|
|
|
|
tracks/10/imported = false
|
|
|
|
|
tracks/10/enabled = true
|
|
|
|
|
tracks/10/path = NodePath("../room/magazine_01_cover89_001:rotation")
|
|
|
|
|
tracks/10/interp = 1
|
|
|
|
|
tracks/10/loop_wrap = true
|
|
|
|
|
tracks/10/keys = {
|
|
|
|
|
"times": PackedFloat32Array(0),
|
|
|
|
|
"transitions": PackedFloat32Array(1),
|
|
|
|
|
"update": 0,
|
|
|
|
|
"values": [Vector3(0, 0, 0)]
|
|
|
|
|
}
|
|
|
|
|
tracks/11/type = "value"
|
|
|
|
|
tracks/11/imported = false
|
|
|
|
|
tracks/11/enabled = true
|
|
|
|
|
tracks/11/path = NodePath("../room/wooden_crate_01/wooden_crate_01_001:position")
|
|
|
|
|
tracks/11/interp = 1
|
|
|
|
|
tracks/11/loop_wrap = true
|
|
|
|
|
tracks/11/keys = {
|
|
|
|
|
"times": PackedFloat32Array(0),
|
|
|
|
|
"transitions": PackedFloat32Array(1),
|
|
|
|
|
"update": 0,
|
|
|
|
|
"values": [Vector3(0, 0.37198952, -0.21669245)]
|
|
|
|
|
}
|
|
|
|
|
tracks/12/type = "value"
|
|
|
|
|
tracks/12/imported = false
|
|
|
|
|
tracks/12/enabled = true
|
|
|
|
|
tracks/12/path = NodePath("../room/wooden_crate_01/wooden_crate_01_001/wooden_crate_01_002:position")
|
|
|
|
|
tracks/12/interp = 1
|
|
|
|
|
tracks/12/loop_wrap = true
|
|
|
|
|
tracks/12/keys = {
|
|
|
|
|
"times": PackedFloat32Array(0),
|
|
|
|
|
"transitions": PackedFloat32Array(1),
|
|
|
|
|
"update": 0,
|
|
|
|
|
"values": [Vector3(9.298325e-06, 0.023081541, 0.37456745)]
|
|
|
|
|
}
|
|
|
|
|
tracks/13/type = "value"
|
|
|
|
|
tracks/13/imported = false
|
|
|
|
|
tracks/13/enabled = true
|
|
|
|
|
tracks/13/path = NodePath("../room/wooden_crate_01/wooden_crate_01_001/wooden_crate_01_002:rotation")
|
|
|
|
|
tracks/13/interp = 1
|
|
|
|
|
tracks/13/loop_wrap = true
|
|
|
|
|
tracks/13/keys = {
|
|
|
|
|
"times": PackedFloat32Array(0),
|
|
|
|
|
"transitions": PackedFloat32Array(1),
|
|
|
|
|
"update": 0,
|
|
|
|
|
"values": [Vector3(0, 0, 0)]
|
|
|
|
|
}
|
|
|
|
|
tracks/14/type = "value"
|
|
|
|
|
tracks/14/imported = false
|
|
|
|
|
tracks/14/enabled = true
|
|
|
|
|
tracks/14/path = NodePath("../room/wooden_crate_01/wooden_crate_01_001/wooden_crate_01_002:scale")
|
|
|
|
|
tracks/14/interp = 1
|
|
|
|
|
tracks/14/loop_wrap = true
|
|
|
|
|
tracks/14/keys = {
|
|
|
|
|
"times": PackedFloat32Array(0),
|
|
|
|
|
"transitions": PackedFloat32Array(1),
|
|
|
|
|
"update": 0,
|
|
|
|
|
"values": [Vector3(1, 1, 1)]
|
|
|
|
|
}
|
|
|
|
|
tracks/15/type = "value"
|
|
|
|
|
tracks/15/imported = false
|
|
|
|
|
tracks/15/enabled = true
|
|
|
|
|
tracks/15/path = NodePath("../room/wooden_crate_01:position")
|
|
|
|
|
tracks/15/interp = 1
|
|
|
|
|
tracks/15/loop_wrap = true
|
|
|
|
|
tracks/15/keys = {
|
|
|
|
|
"times": PackedFloat32Array(0),
|
|
|
|
|
"transitions": PackedFloat32Array(1),
|
|
|
|
|
"update": 0,
|
|
|
|
|
"values": [Vector3(2.8626578, 0.0041758856, -0.74067295)]
|
|
|
|
|
}
|
|
|
|
|
tracks/16/type = "value"
|
|
|
|
|
tracks/16/imported = false
|
|
|
|
|
tracks/16/enabled = true
|
|
|
|
|
tracks/16/path = NodePath("../room/wooden_crate_01:scale")
|
|
|
|
|
tracks/16/interp = 1
|
|
|
|
|
tracks/16/loop_wrap = true
|
|
|
|
|
tracks/16/keys = {
|
|
|
|
|
"times": PackedFloat32Array(0),
|
|
|
|
|
"transitions": PackedFloat32Array(1),
|
|
|
|
|
"update": 0,
|
|
|
|
|
"values": [Vector3(1, 1, 1)]
|
|
|
|
|
}
|
|
|
|
|
tracks/17/type = "value"
|
|
|
|
|
tracks/17/imported = false
|
|
|
|
|
tracks/17/enabled = true
|
|
|
|
|
tracks/17/path = NodePath("../room/wooden_crate_01:rotation")
|
|
|
|
|
tracks/17/interp = 1
|
|
|
|
|
tracks/17/loop_wrap = true
|
|
|
|
|
tracks/17/keys = {
|
|
|
|
|
"times": PackedFloat32Array(0),
|
|
|
|
|
"transitions": PackedFloat32Array(1),
|
|
|
|
|
"update": 0,
|
|
|
|
|
"values": [Vector3(0, 0, 0)]
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
[sub_resource type="Animation" id="Animation_w4p0y"]
|
|
|
|
|
resource_name = "chest_reveal"
|
|
|
|
|
length = 10.7917
|
|
|
|
|
tracks/0/type = "value"
|
|
|
|
|
tracks/0/imported = false
|
|
|
|
|
tracks/0/enabled = true
|
|
|
|
|
tracks/0/path = NodePath("../room/wooden_crate_01/SpotLight3D:light_energy")
|
|
|
|
|
tracks/0/interp = 1
|
|
|
|
|
tracks/0/loop_wrap = true
|
|
|
|
|
tracks/0/keys = {
|
|
|
|
|
"times": PackedFloat32Array(0, 3.3, 5.8333335),
|
|
|
|
|
"transitions": PackedFloat32Array(1, 1, 1),
|
|
|
|
|
"update": 0,
|
|
|
|
|
"values": [0.0, 100.0, 0.0]
|
|
|
|
|
}
|
|
|
|
|
tracks/1/type = "value"
|
|
|
|
|
tracks/1/imported = false
|
|
|
|
|
tracks/1/enabled = true
|
|
|
|
|
tracks/1/path = NodePath("../room/wooden_crate_01/CPUParticles3D:emitting")
|
|
|
|
|
tracks/1/interp = 1
|
|
|
|
|
tracks/1/loop_wrap = true
|
|
|
|
|
tracks/1/keys = {
|
|
|
|
|
"times": PackedFloat32Array(0, 0.16, 3.5),
|
|
|
|
|
"transitions": PackedFloat32Array(1, 1, 1),
|
|
|
|
|
"update": 1,
|
|
|
|
|
"values": [false, true, false]
|
|
|
|
|
}
|
|
|
|
|
tracks/2/type = "value"
|
|
|
|
|
tracks/2/imported = false
|
|
|
|
|
tracks/2/enabled = true
|
|
|
|
|
tracks/2/path = NodePath("../room/wooden_crate_01/CPUParticles3D:gravity")
|
|
|
|
|
tracks/2/interp = 1
|
|
|
|
|
tracks/2/loop_wrap = true
|
|
|
|
|
tracks/2/keys = {
|
|
|
|
|
"times": PackedFloat32Array(3.2588696, 3.9),
|
|
|
|
|
"transitions": PackedFloat32Array(1, 1),
|
|
|
|
|
"update": 0,
|
|
|
|
|
"values": [Vector3(0, 0, 0), Vector3(0, -0.3, 0)]
|
|
|
|
|
}
|
|
|
|
|
tracks/3/type = "value"
|
|
|
|
|
tracks/3/imported = false
|
|
|
|
|
tracks/3/enabled = true
|
|
|
|
|
tracks/3/path = NodePath("../room/wooden_crate_01/CPUParticles3D:linear_accel_max")
|
|
|
|
|
tracks/3/interp = 1
|
|
|
|
|
tracks/3/loop_wrap = true
|
|
|
|
|
tracks/3/keys = {
|
|
|
|
|
"times": PackedFloat32Array(3.2255363, 3.876667),
|
|
|
|
|
"transitions": PackedFloat32Array(1, 1),
|
|
|
|
|
"update": 0,
|
|
|
|
|
"values": [0.0, 3.0]
|
|
|
|
|
}
|
|
|
|
|
tracks/4/type = "value"
|
|
|
|
|
tracks/4/imported = false
|
|
|
|
|
tracks/4/enabled = true
|
|
|
|
|
tracks/4/path = NodePath("../room/wooden_crate_01/CPUParticles3D:linear_accel_min")
|
|
|
|
|
tracks/4/interp = 1
|
|
|
|
|
tracks/4/loop_wrap = true
|
|
|
|
|
tracks/4/keys = {
|
|
|
|
|
"times": PackedFloat32Array(3.2255363, 3.876667),
|
|
|
|
|
"transitions": PackedFloat32Array(1, 1),
|
|
|
|
|
"update": 0,
|
|
|
|
|
"values": [0.0, 1.0]
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
[sub_resource type="AnimationLibrary" id="AnimationLibrary_vutxw"]
|
|
|
|
|
_data = {
|
|
|
|
|
&"RESET": SubResource("Animation_ipdak"),
|
|
|
|
|
&"chest_reveal": SubResource("Animation_w4p0y")
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
[node name="youth_room" instance=ExtResource("1_w4p0y")]
|
|
|
|
|
script = SubResource("GDScript_w4p0y")
|
|
|
|
|
|
|
|
|
|
[node name="magazine_01_cover89_003" parent="room" index="10"]
|
|
|
|
|
transform = Transform3D(0.025604796, 0.9998218, 0.014154732, -0.027297392, -0.013988163, 0.99981344, 2.049016, -0.012680292, 0.01314283, 3.0323079, 0.18476419, -1.0096122)
|
|
|
|
|
|
|
|
|
|
[node name="Suzanne" parent="room/wooden_crate_01" index="0"]
|
|
|
|
|
material_override = SubResource("StandardMaterial3D_ipdak")
|
|
|
|
|
cast_shadow = 0
|
|
|
|
|
|
|
|
|
|
[node name="SpotLight3D" type="SpotLight3D" parent="room/wooden_crate_01" index="2"]
|
|
|
|
|
transform = Transform3D(0.9999989, 0.0010398624, -0.0010357652, -0.0010357656, -4.350773e-08, -0.99999946, -0.0010398618, 0.99999946, 1.033546e-06, 0, 0.007650737, 0)
|
|
|
|
|
light_color = Color(0.7985512, 0.6035162, 0.25801575, 1)
|
|
|
|
|
light_energy = 0.0
|
|
|
|
|
light_size = 0.2
|
|
|
|
|
light_specular = 0.2
|
|
|
|
|
shadow_enabled = true
|
|
|
|
|
spot_range = 1.8500571
|
|
|
|
|
spot_angle = 68.62
|
|
|
|
|
spot_angle_attenuation = 3.3635862
|
|
|
|
|
|
|
|
|
|
[node name="CPUParticles3D" type="CPUParticles3D" parent="room/wooden_crate_01" index="3"]
|
|
|
|
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.28746572, 0)
|
|
|
|
|
material_override = SubResource("StandardMaterial3D_vutxw")
|
|
|
|
|
emitting = false
|
|
|
|
|
amount = 300
|
|
|
|
|
lifetime = 5.0
|
|
|
|
|
mesh = SubResource("QuadMesh_f3ra1")
|
|
|
|
|
emission_shape = 3
|
|
|
|
|
emission_box_extents = Vector3(0.3, 0.1, 0.2)
|
|
|
|
|
direction = Vector3(0, 1, 0)
|
|
|
|
|
gravity = Vector3(0, 0, 0)
|
|
|
|
|
initial_velocity_max = 0.1
|
|
|
|
|
scale_amount_min = 0.05
|
|
|
|
|
scale_amount_max = 0.2
|
|
|
|
|
color = Color(4.415934, 4.415934, 4.415934, 1)
|
|
|
|
|
color_ramp = SubResource("Gradient_ks8qg")
|
|
|
|
|
color_initial_ramp = SubResource("Gradient_h1m70")
|
|
|
|
|
|
|
|
|
|
[node name="SecondaryAnimation" type="AnimationPlayer" parent="." index="5"]
|
|
|
|
|
root_node = NodePath("../AnimationPlayer")
|
|
|
|
|
libraries = {
|
|
|
|
|
&"": SubResource("AnimationLibrary_vutxw")
|
|
|
|
|
}
|
|
|
|
|
autoplay = "RESET"
|