DreamBall/levels/base/level.tscn
Taevas 709ce8eea3
split gravity logic, various bug fixes
fixed gravity strength being possibly strong at level beginning
fixed restarting being allowed after getting the last ring
fixed save file's "played_for" being reset or set to another file's
fixed the displayed save file total play time not being updated on main menu

maybe there's other stuff
2025-04-29 21:18:04 +02:00

173 lines
7.5 KiB
Text

[gd_scene load_steps=11 format=3 uid="uid://ovtknjyj83gh"]
[ext_resource type="PackedScene" uid="uid://cnnvwotv33u1b" path="res://elements/player.tscn" id="2_b00jj"]
[ext_resource type="PackedScene" uid="uid://cpm3laywhlbq5" path="res://elements/ring.tscn" id="3_hel5x"]
[ext_resource type="PackedScene" uid="uid://c77bli40240nk" path="res://elements/sign.tscn" id="4_atq6y"]
[ext_resource type="PackedScene" uid="uid://dnuakh7n3fuij" path="res://levels/base/music.tscn" id="4_uq42r"]
[sub_resource type="GDScript" id="GDScript_1yugx"]
script/source = "extends Level
func _init() -> void:
self.id = \"base\"
func _on_player_velocity_change(new_velocity: float) -> void:
self.velocity = new_velocity
self.music.adaptInstrumentsToVelocity(new_velocity * 1.5)
"
[sub_resource type="Gradient" id="Gradient_hs6gw"]
[sub_resource type="GradientTexture2D" id="GradientTexture2D_hyysp"]
gradient = SubResource("Gradient_hs6gw")
fill_from = Vector2(0.536082, 1)
fill_to = Vector2(0.536082, 0)
[sub_resource type="PanoramaSkyMaterial" id="PanoramaSkyMaterial_g3k38"]
panorama = SubResource("GradientTexture2D_hyysp")
[sub_resource type="Sky" id="Sky_du8e4"]
sky_material = SubResource("PanoramaSkyMaterial_g3k38")
radiance_size = 1
[sub_resource type="Environment" id="Environment_y0yoy"]
background_mode = 2
background_color = Color(0.758192, 0.758192, 0.758192, 1)
sky = SubResource("Sky_du8e4")
ambient_light_source = 3
ambient_light_color = Color(1, 1, 1, 1)
reflected_light_source = 2
[node name="Base" type="Node3D"]
script = SubResource("GDScript_1yugx")
metadata/_custom_type_script = "uid://w3fetao1pegm"
[node name="Environment" type="WorldEnvironment" parent="."]
environment = SubResource("Environment_y0yoy")
[node name="Music" parent="." instance=ExtResource("4_uq42r")]
[node name="Player" parent="." instance=ExtResource("2_b00jj")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 13.2075, 0)
[node name="Signs" type="Node3D" parent="."]
transform = Transform3D(-1, 8.74228e-08, 0, -8.74228e-08, -1, 0, 0, 0, 1, -366.478, 20.7111, -61.4153)
[node name="Sign" parent="Signs" instance=ExtResource("4_atq6y")]
transform = Transform3D(-1, -8.74228e-08, 0, 8.74228e-08, -1, 0, 0, 0, 1, -366.478, 3.24249e-05, 0)
[node name="Text" parent="Signs/Sign" index="0"]
transform = Transform3D(20, 0, 0, 0, 20, 0, 0, 0, 20, 0, 0, 0)
text = "Press the arrow keys
to change the gravity!"
[node name="Sign7" parent="Signs" instance=ExtResource("4_atq6y")]
transform = Transform3D(4.37114e-08, -7.10543e-15, -1, -8.74228e-08, -1, 0, -1, 8.74228e-08, -4.37114e-08, 150, 40, 61)
[node name="Text" parent="Signs/Sign7" index="0"]
transform = Transform3D(30, 0, 0, 0, 30, 0, 0, 0, 30, 0, 0, 0)
text = "SLOW DOWN!!"
[node name="Sign2" parent="Signs" instance=ExtResource("4_atq6y")]
transform = Transform3D(-1, -8.74228e-08, 0, 8.74228e-08, -1, 0, 0, 0, 1, -234.9, 2.09808e-05, 0)
[node name="Text" parent="Signs/Sign2" index="0"]
transform = Transform3D(15, 0, 0, 0, 15, 0, 0, 0, 15, 0, 0, 0)
text = "While the shift key is pressed,
the gravity is much stronger!"
[node name="Sign4" parent="Signs" instance=ExtResource("4_atq6y")]
transform = Transform3D(-1, -8.74228e-08, 0, 8.74228e-08, -1, 0, 0, 0, 1, -131.629, 81.2564, 0)
[node name="Text" parent="Signs/Sign4" index="0"]
transform = Transform3D(20, 0, 0, 0, 20, 0, 0, 0, 20, 0, 0, 0)
text = "You can take the rings
in any order!"
[node name="Sign5" parent="Signs" instance=ExtResource("4_atq6y")]
transform = Transform3D(-4.37114e-08, 8.74228e-08, 1, 0, -1, 8.74228e-08, 1, 3.82137e-15, 4.37114e-08, -490.634, 50.3763, 34.0693)
[node name="Text" parent="Signs/Sign5" index="0"]
transform = Transform3D(20, 0, 0, 0, 20, 0, 0, 0, 20, 0, 0, 0)
text = "The level is over once
you get all the rings!"
[node name="Sign6" parent="Signs" instance=ExtResource("4_atq6y")]
transform = Transform3D(-0.707107, 6.18172e-08, 0.707107, -8.74228e-08, -1, 0, 0.707107, -6.18172e-08, 0.707107, -532.475, 18.0064, 60)
[node name="Text" parent="Signs/Sign6" index="0"]
transform = Transform3D(30, 0, 0, 0, 30, 0, 0, 0, 30, 0, 0, 0)
text = "Have fun!"
[node name="Sign3" parent="Signs" instance=ExtResource("4_atq6y")]
[node name="Text" parent="Signs/Sign3" index="0"]
transform = Transform3D(-20, 3.01992e-06, 0, -3.01992e-06, -20, 0, 0, 0, 20, 0, 0, 0)
text = "The less time you take,
the more you can flex!"
[node name="Rings" type="Node3D" parent="."]
[node name="Ring" parent="Rings" instance=ExtResource("3_hel5x")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -3.18355, 0)
[node name="Ring4" parent="Rings" instance=ExtResource("3_hel5x")]
transform = Transform3D(-4.37114e-08, -1, 0, 1, -4.37114e-08, 0, 0, 0, 1, -14.2868, 3.51514, 0)
[node name="Ring18" parent="Rings" instance=ExtResource("3_hel5x")]
transform = Transform3D(-4.37114e-08, -1, 0, 1, -4.37114e-08, 0, 0, 0, 1, 10.2086, 3.51514, 0)
[node name="Ring5" parent="Rings" instance=ExtResource("3_hel5x")]
transform = Transform3D(-4.37114e-08, -1, 0, 1, -4.37114e-08, 0, 0, 0, 1, -27.6263, 3.51514, 0)
[node name="Ring6" parent="Rings" instance=ExtResource("3_hel5x")]
transform = Transform3D(-4.37114e-08, -1, 0, 1, -4.37114e-08, 0, 0, 0, 1, -51.8171, 3.51514, 0)
[node name="Ring7" parent="Rings" instance=ExtResource("3_hel5x")]
transform = Transform3D(-4.37114e-08, -1, 0, 1, -4.37114e-08, 0, 0, 0, 1, -65.1566, 3.51514, 0)
[node name="Ring3" parent="Rings" instance=ExtResource("3_hel5x")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 20.5274, -3.18355, 0)
[node name="Ring2" parent="Rings" instance=ExtResource("3_hel5x")]
transform = Transform3D(-6.55671e-08, -1.5, 0, 1.5, -6.55671e-08, 0, 0, 0, 1.5, 10, -16.4737, 0)
[node name="Ring8" parent="Rings" instance=ExtResource("3_hel5x")]
transform = Transform3D(1.06066, 1.06066, 0, -1.06066, 1.06066, 0, 0, 0, 1.5, -326.538, -16.4737, 0)
[node name="Ring14" parent="Rings" instance=ExtResource("3_hel5x")]
transform = Transform3D(0.707107, -0.707107, 0, 0.707107, 0.707107, 0, 0, 0, 1, -354.547, -11.0247, 0)
[node name="Ring15" parent="Rings" instance=ExtResource("3_hel5x")]
transform = Transform3D(-0.105404, -1.99722, 0, 1.99722, -0.105404, 0, 0, 0, 2, -217.214, -66.3843, 0)
[node name="Ring16" parent="Rings" instance=ExtResource("3_hel5x")]
transform = Transform3D(-0.079053, -1.49792, 0, 1.49792, -0.079053, 0, 0, 0, 1.5, -101.621, -65.3763, 0)
[node name="Ring17" parent="Rings" instance=ExtResource("3_hel5x")]
transform = Transform3D(-0.079053, -1.49792, 0, 1.49792, -0.079053, 0, 0, 0, 1.5, 125.89, -1.2963, 0)
[node name="Ring9" parent="Rings" instance=ExtResource("3_hel5x")]
transform = Transform3D(1.49977, -0.0263618, 0, 0.0263618, 1.49977, 0, 0, 0, 1.5, -459.613, -6.55224, 0)
[node name="Ring10" parent="Rings" instance=ExtResource("3_hel5x")]
transform = Transform3D(0.0287439, 1.49972, 0, -1.49972, 0.0287439, 0, 0, 0, 1.5, -440.296, 8.64172, 0)
[node name="Ring11" parent="Rings" instance=ExtResource("3_hel5x")]
transform = Transform3D(0.0229952, 1.19978, 0, -1.19978, 0.0229952, 0, 0, 0, 1.2, -430.715, 8.64172, 0)
[node name="Ring12" parent="Rings" instance=ExtResource("3_hel5x")]
transform = Transform3D(0.0172464, 0.899835, 0, -0.899835, 0.0172464, 0, 0, 0, 0.9, -422.376, 8.64172, 0)
[node name="Ring13" parent="Rings" instance=ExtResource("3_hel5x")]
transform = Transform3D(0.0114976, 0.59989, 0, -0.59989, 0.0114976, 0, 0, 0, 0.6, -414.274, 8.64172, 0)
[connection signal="velocity_change" from="Player" to="." method="_on_player_velocity_change"]
[editable path="Signs/Sign"]
[editable path="Signs/Sign7"]
[editable path="Signs/Sign2"]
[editable path="Signs/Sign4"]
[editable path="Signs/Sign5"]
[editable path="Signs/Sign6"]
[editable path="Signs/Sign3"]