Bläddra i källkod

Fix errors in Physics-Based Platformer 2D demo (#958)

Alex 1 år sedan
förälder
incheckning
9484fbbace

+ 16 - 16
2d/physics_platformer/background/parallax_bg.tscn

@@ -1,11 +1,11 @@
-[gd_scene load_steps=7 format=2]
+[gd_scene load_steps=7 format=3 uid="uid://csdn3dwkaprow"]
 
 
-[ext_resource path="res://background/scroll_bg_sky.png" type="Texture2D" id=1]
-[ext_resource path="res://background/scroll_bg_cloud_1.png" type="Texture2D" id=2]
-[ext_resource path="res://background/scroll_bg_cloud_2.png" type="Texture2D" id=3]
-[ext_resource path="res://background/scroll_bg_cloud_3.png" type="Texture2D" id=4]
-[ext_resource path="res://background/scroll_bg_fg_2.png" type="Texture2D" id=5]
-[ext_resource path="res://background/scroll_bg_fg_1.png" type="Texture2D" id=6]
+[ext_resource type="Texture2D" uid="uid://obtbrlptthky" path="res://background/scroll_bg_sky.png" id="1"]
+[ext_resource type="Texture2D" uid="uid://udnu8aekj8mh" path="res://background/scroll_bg_cloud_1.png" id="2"]
+[ext_resource type="Texture2D" uid="uid://crkm8guj5obto" path="res://background/scroll_bg_cloud_2.png" id="3"]
+[ext_resource type="Texture2D" uid="uid://bb8syr2l4kbwp" path="res://background/scroll_bg_cloud_3.png" id="4"]
+[ext_resource type="Texture2D" uid="uid://bitu0xunnhbjf" path="res://background/scroll_bg_fg_2.png" id="5"]
+[ext_resource type="Texture2D" uid="uid://bdhblhpgjebrc" path="res://background/scroll_bg_fg_1.png" id="6"]
 
 
 [node name="ParallaxBg" type="ParallaxBackground"]
 [node name="ParallaxBg" type="ParallaxBackground"]
 scroll_base_scale = Vector2(0.7, 0)
 scroll_base_scale = Vector2(0.7, 0)
@@ -15,7 +15,7 @@ motion_mirroring = Vector2(400, 0)
 
 
 [node name="Sprite2D" type="Sprite2D" parent="Sky"]
 [node name="Sprite2D" type="Sprite2D" parent="Sky"]
 scale = Vector2(1000, 0.94)
 scale = Vector2(1000, 0.94)
-texture = ExtResource( 1 )
+texture = ExtResource("1")
 centered = false
 centered = false
 offset = Vector2(-15, 0)
 offset = Vector2(-15, 0)
 
 
@@ -25,32 +25,32 @@ motion_mirroring = Vector2(400, 0)
 
 
 [node name="Sprite1" type="Sprite2D" parent="Clouds"]
 [node name="Sprite1" type="Sprite2D" parent="Clouds"]
 position = Vector2(14, 64)
 position = Vector2(14, 64)
-texture = ExtResource( 2 )
+texture = ExtResource("2")
 centered = false
 centered = false
 
 
 [node name="Sprite2" type="Sprite2D" parent="Clouds"]
 [node name="Sprite2" type="Sprite2D" parent="Clouds"]
 position = Vector2(202, 12)
 position = Vector2(202, 12)
-texture = ExtResource( 2 )
+texture = ExtResource("2")
 centered = false
 centered = false
 
 
 [node name="Sprite3" type="Sprite2D" parent="Clouds"]
 [node name="Sprite3" type="Sprite2D" parent="Clouds"]
 position = Vector2(77, 23)
 position = Vector2(77, 23)
-texture = ExtResource( 3 )
+texture = ExtResource("3")
 centered = false
 centered = false
 
 
 [node name="Sprite4" type="Sprite2D" parent="Clouds"]
 [node name="Sprite4" type="Sprite2D" parent="Clouds"]
 position = Vector2(272, 65)
 position = Vector2(272, 65)
-texture = ExtResource( 3 )
+texture = ExtResource("3")
 centered = false
 centered = false
 
 
 [node name="Sprite5" type="Sprite2D" parent="Clouds"]
 [node name="Sprite5" type="Sprite2D" parent="Clouds"]
 position = Vector2(127, 79)
 position = Vector2(127, 79)
-texture = ExtResource( 4 )
+texture = ExtResource("4")
 centered = false
 centered = false
 
 
 [node name="Sprite6" type="Sprite2D" parent="Clouds"]
 [node name="Sprite6" type="Sprite2D" parent="Clouds"]
 position = Vector2(337, 35)
 position = Vector2(337, 35)
-texture = ExtResource( 4 )
+texture = ExtResource("4")
 centered = false
 centered = false
 
 
 [node name="Mount2" type="ParallaxLayer" parent="."]
 [node name="Mount2" type="ParallaxLayer" parent="."]
@@ -59,7 +59,7 @@ motion_mirroring = Vector2(400, 0)
 
 
 [node name="Sprite2D" type="Sprite2D" parent="Mount2"]
 [node name="Sprite2D" type="Sprite2D" parent="Mount2"]
 position = Vector2(0, 113)
 position = Vector2(0, 113)
-texture = ExtResource( 5 )
+texture = ExtResource("5")
 centered = false
 centered = false
 region_rect = Rect2(0, 0, 400, 128)
 region_rect = Rect2(0, 0, 400, 128)
 
 
@@ -69,6 +69,6 @@ motion_mirroring = Vector2(400, 0)
 
 
 [node name="Sprite2D" type="Sprite2D" parent="Mount1"]
 [node name="Sprite2D" type="Sprite2D" parent="Mount1"]
 position = Vector2(0, 113)
 position = Vector2(0, 113)
-texture = ExtResource( 6 )
+texture = ExtResource("6")
 centered = false
 centered = false
 region_rect = Rect2(0, 0, 400, 128)
 region_rect = Rect2(0, 0, 400, 128)

+ 40 - 37
2d/physics_platformer/coin/coin.tscn

@@ -1,21 +1,21 @@
-[gd_scene load_steps=10 format=2]
+[gd_scene load_steps=11 format=3 uid="uid://6uilf6rad880"]
 
 
-[ext_resource path="res://coin/coin.gd" type="Script" id=1]
-[ext_resource path="res://coin/coin.png" type="Texture2D" id=2]
-[ext_resource path="res://audio/sound_coin.wav" type="AudioStream" id=3]
-[ext_resource path="res://player/bullet.png" type="Texture2D" id=4]
+[ext_resource type="Script" path="res://coin/coin.gd" id="1"]
+[ext_resource type="Texture2D" uid="uid://bio1crwbvrmc2" path="res://coin/coin.png" id="2"]
+[ext_resource type="AudioStream" uid="uid://cy7lxrapbqu1r" path="res://audio/sound_coin.wav" id="3"]
+[ext_resource type="Texture2D" uid="uid://7sv64orewgmb" path="res://player/bullet.png" id="4"]
 
 
-[sub_resource type="Animation" id=1]
+[sub_resource type="Animation" id="1"]
 resource_name = "spin"
 resource_name = "spin"
 length = 1.5
 length = 1.5
-loop = true
+loop_mode = 1
 step = 0.25
 step = 0.25
 tracks/0/type = "value"
 tracks/0/type = "value"
+tracks/0/imported = false
+tracks/0/enabled = true
 tracks/0/path = NodePath("Sprite2D:frame")
 tracks/0/path = NodePath("Sprite2D:frame")
 tracks/0/interp = 1
 tracks/0/interp = 1
 tracks/0/loop_wrap = true
 tracks/0/loop_wrap = true
-tracks/0/imported = false
-tracks/0/enabled = true
 tracks/0/keys = {
 tracks/0/keys = {
 "times": PackedFloat32Array(0, 0.25, 0.5, 0.75, 1, 1.25, 1.5),
 "times": PackedFloat32Array(0, 0.25, 0.5, 0.75, 1, 1.25, 1.5),
 "transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1),
 "transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1),
@@ -23,15 +23,15 @@ tracks/0/keys = {
 "values": [0, 1, 2, 3, 2, 1, 0]
 "values": [0, 1, 2, 3, 2, 1, 0]
 }
 }
 
 
-[sub_resource type="Animation" id=2]
+[sub_resource type="Animation" id="2"]
 length = 8.0
 length = 8.0
 step = 0.0
 step = 0.0
 tracks/0/type = "value"
 tracks/0/type = "value"
+tracks/0/imported = false
+tracks/0/enabled = true
 tracks/0/path = NodePath("Sprite2D:frame")
 tracks/0/path = NodePath("Sprite2D:frame")
 tracks/0/interp = 1
 tracks/0/interp = 1
 tracks/0/loop_wrap = true
 tracks/0/loop_wrap = true
-tracks/0/imported = false
-tracks/0/enabled = true
 tracks/0/keys = {
 tracks/0/keys = {
 "times": PackedFloat32Array(0),
 "times": PackedFloat32Array(0),
 "transitions": PackedFloat32Array(1),
 "transitions": PackedFloat32Array(1),
@@ -39,11 +39,11 @@ tracks/0/keys = {
 "values": [0]
 "values": [0]
 }
 }
 tracks/1/type = "value"
 tracks/1/type = "value"
+tracks/1/imported = false
+tracks/1/enabled = true
 tracks/1/path = NodePath("GPUParticles3D:emitting")
 tracks/1/path = NodePath("GPUParticles3D:emitting")
 tracks/1/interp = 1
 tracks/1/interp = 1
 tracks/1/loop_wrap = true
 tracks/1/loop_wrap = true
-tracks/1/imported = false
-tracks/1/enabled = true
 tracks/1/keys = {
 tracks/1/keys = {
 "times": PackedFloat32Array(0),
 "times": PackedFloat32Array(0),
 "transitions": PackedFloat32Array(1),
 "transitions": PackedFloat32Array(1),
@@ -51,25 +51,25 @@ tracks/1/keys = {
 "values": [true]
 "values": [true]
 }
 }
 tracks/2/type = "method"
 tracks/2/type = "method"
+tracks/2/imported = false
+tracks/2/enabled = true
 tracks/2/path = NodePath(".")
 tracks/2/path = NodePath(".")
 tracks/2/interp = 1
 tracks/2/interp = 1
 tracks/2/loop_wrap = true
 tracks/2/loop_wrap = true
-tracks/2/imported = false
-tracks/2/enabled = true
 tracks/2/keys = {
 tracks/2/keys = {
 "times": PackedFloat32Array(2.7),
 "times": PackedFloat32Array(2.7),
 "transitions": PackedFloat32Array(1),
 "transitions": PackedFloat32Array(1),
 "values": [{
 "values": [{
 "args": [],
 "args": [],
-"method": "queue_free"
+"method": &"queue_free"
 }]
 }]
 }
 }
 tracks/3/type = "value"
 tracks/3/type = "value"
+tracks/3/imported = false
+tracks/3/enabled = true
 tracks/3/path = NodePath("Sound:playing")
 tracks/3/path = NodePath("Sound:playing")
 tracks/3/interp = 1
 tracks/3/interp = 1
 tracks/3/loop_wrap = true
 tracks/3/loop_wrap = true
-tracks/3/imported = false
-tracks/3/enabled = true
 tracks/3/keys = {
 tracks/3/keys = {
 "times": PackedFloat32Array(0),
 "times": PackedFloat32Array(0),
 "transitions": PackedFloat32Array(1),
 "transitions": PackedFloat32Array(1),
@@ -77,11 +77,11 @@ tracks/3/keys = {
 "values": [true]
 "values": [true]
 }
 }
 tracks/4/type = "value"
 tracks/4/type = "value"
+tracks/4/imported = false
+tracks/4/enabled = true
 tracks/4/path = NodePath("Sprite2D:self_modulate")
 tracks/4/path = NodePath("Sprite2D:self_modulate")
 tracks/4/interp = 1
 tracks/4/interp = 1
 tracks/4/loop_wrap = true
 tracks/4/loop_wrap = true
-tracks/4/imported = false
-tracks/4/enabled = true
 tracks/4/keys = {
 tracks/4/keys = {
 "times": PackedFloat32Array(0, 0.41),
 "times": PackedFloat32Array(0, 0.41),
 "transitions": PackedFloat32Array(1, 1),
 "transitions": PackedFloat32Array(1, 1),
@@ -89,49 +89,52 @@ tracks/4/keys = {
 "values": [Color(1, 1, 1, 1), Color(1, 1, 1, 0)]
 "values": [Color(1, 1, 1, 1), Color(1, 1, 1, 0)]
 }
 }
 
 
-[sub_resource type="CircleShape2D" id=3]
+[sub_resource type="AnimationLibrary" id="AnimationLibrary_4atuj"]
+_data = {
+"spin": SubResource("1"),
+"taken": SubResource("2")
+}
+
+[sub_resource type="CircleShape2D" id="3"]
 radius = 5.0
 radius = 5.0
 
 
-[sub_resource type="CanvasItemMaterial" id=4]
+[sub_resource type="CanvasItemMaterial" id="4"]
 blend_mode = 1
 blend_mode = 1
 
 
-[sub_resource type="Curve" id=5]
+[sub_resource type="Curve" id="5"]
 
 
 [node name="Coin" type="Area2D"]
 [node name="Coin" type="Area2D"]
-script = ExtResource( 1 )
+script = ExtResource("1")
 
 
 [node name="Sprite2D" type="Sprite2D" parent="."]
 [node name="Sprite2D" type="Sprite2D" parent="."]
-texture = ExtResource( 2 )
+texture = ExtResource("2")
 hframes = 4
 hframes = 4
 
 
 [node name="AnimationPlayer" type="AnimationPlayer" parent="."]
 [node name="AnimationPlayer" type="AnimationPlayer" parent="."]
 autoplay = "spin"
 autoplay = "spin"
-anims/spin = SubResource( 1 )
-anims/taken = SubResource( 2 )
+libraries = {
+"": SubResource("AnimationLibrary_4atuj")
+}
 
 
 [node name="Collision" type="CollisionShape2D" parent="."]
 [node name="Collision" type="CollisionShape2D" parent="."]
-shape = SubResource( 3 )
+shape = SubResource("3")
 
 
 [node name="Sound" type="AudioStreamPlayer2D" parent="."]
 [node name="Sound" type="AudioStreamPlayer2D" parent="."]
-stream = ExtResource( 3 )
+stream = ExtResource("3")
 
 
 [node name="GPUParticles3D" type="CPUParticles2D" parent="."]
 [node name="GPUParticles3D" type="CPUParticles2D" parent="."]
 modulate = Color(0.596863, 0.638745, 1, 1)
 modulate = Color(0.596863, 0.638745, 1, 1)
-material = SubResource( 4 )
+material = SubResource("4")
 emitting = false
 emitting = false
 one_shot = true
 one_shot = true
 explosiveness = 0.7
 explosiveness = 0.7
-texture = ExtResource( 4 )
+texture = ExtResource("4")
 emission_shape = 1
 emission_shape = 1
 emission_sphere_radius = 20.0
 emission_sphere_radius = 20.0
 gravity = Vector2(0, 0)
 gravity = Vector2(0, 0)
-initial_velocity = 1.0
-angular_velocity = 0.0191222
-scale_amount = 0.3
-scale_amount_curve = SubResource( 5 )
+scale_amount_curve = SubResource("5")
 
 
 [node name="Enabler" type="VisibleOnScreenEnabler2D" parent="."]
 [node name="Enabler" type="VisibleOnScreenEnabler2D" parent="."]
 rect = Rect2(-5, -5, 10, 10)
 rect = Rect2(-5, -5, 10, 10)
-pause_particles = false
 
 
 [connection signal="body_entered" from="." to="." method="_on_body_enter"]
 [connection signal="body_entered" from="." to="." method="_on_body_enter"]

+ 35 - 34
2d/physics_platformer/enemy/enemy.tscn

@@ -8,6 +8,34 @@
 
 
 [sub_resource type="PhysicsMaterial" id="1"]
 [sub_resource type="PhysicsMaterial" id="1"]
 
 
+[sub_resource type="Animation" id="Animation_a7qal"]
+resource_name = "RESET"
+length = 0.01
+tracks/0/type = "value"
+tracks/0/imported = false
+tracks/0/enabled = true
+tracks/0/path = NodePath("Sprite2D:frame")
+tracks/0/interp = 1
+tracks/0/loop_wrap = true
+tracks/0/keys = {
+"times": PackedFloat32Array(0),
+"transitions": PackedFloat32Array(1),
+"update": 1,
+"values": [0]
+}
+tracks/1/type = "value"
+tracks/1/imported = false
+tracks/1/enabled = true
+tracks/1/path = NodePath("Sprite2D:self_modulate")
+tracks/1/interp = 1
+tracks/1/loop_wrap = true
+tracks/1/keys = {
+"times": PackedFloat32Array(0),
+"transitions": PackedFloat32Array(1),
+"update": 0,
+"values": [Color(1, 1, 1, 1)]
+}
+
 [sub_resource type="Animation" id="2"]
 [sub_resource type="Animation" id="2"]
 length = 6.0
 length = 6.0
 step = 0.0
 step = 0.0
@@ -99,34 +127,6 @@ tracks/0/keys = {
 "values": [0, 1, 2, 3, 4, 0]
 "values": [0, 1, 2, 3, 4, 0]
 }
 }
 
 
-[sub_resource type="Animation" id="Animation_a7qal"]
-resource_name = "RESET"
-length = 0.01
-tracks/0/type = "value"
-tracks/0/imported = false
-tracks/0/enabled = true
-tracks/0/path = NodePath("Sprite2D:frame")
-tracks/0/interp = 1
-tracks/0/loop_wrap = true
-tracks/0/keys = {
-"times": PackedFloat32Array(0),
-"transitions": PackedFloat32Array(1),
-"update": 1,
-"values": [0]
-}
-tracks/1/type = "value"
-tracks/1/imported = false
-tracks/1/enabled = true
-tracks/1/path = NodePath("Sprite2D:self_modulate")
-tracks/1/interp = 1
-tracks/1/loop_wrap = true
-tracks/1/keys = {
-"times": PackedFloat32Array(0),
-"transitions": PackedFloat32Array(1),
-"update": 0,
-"values": [Color(1, 1, 1, 1)]
-}
-
 [sub_resource type="AnimationLibrary" id="AnimationLibrary_ay0tp"]
 [sub_resource type="AnimationLibrary" id="AnimationLibrary_ay0tp"]
 _data = {
 _data = {
 "RESET": SubResource("Animation_a7qal"),
 "RESET": SubResource("Animation_a7qal"),
@@ -154,6 +154,13 @@ libraries = {
 "": SubResource("AnimationLibrary_ay0tp")
 "": SubResource("AnimationLibrary_ay0tp")
 }
 }
 
 
+[node name="SoundExplode" type="AudioStreamPlayer2D" parent="."]
+stream = ExtResource("5_t2e2f")
+
+[node name="SoundHit" type="AudioStreamPlayer2D" parent="."]
+position = Vector2(0, -1)
+stream = ExtResource("4_5rkwm")
+
 [node name="VisibleOnScreenEnabler2D" type="VisibleOnScreenEnabler2D" parent="."]
 [node name="VisibleOnScreenEnabler2D" type="VisibleOnScreenEnabler2D" parent="."]
 rect = Rect2(-150, -100, 300, 200)
 rect = Rect2(-150, -100, 300, 200)
 
 
@@ -193,9 +200,3 @@ emission_sphere_radius = 8.0
 spread = 180.0
 spread = 180.0
 gravity = Vector2(0, 0)
 gravity = Vector2(0, 0)
 color_ramp = SubResource("6")
 color_ramp = SubResource("6")
-
-[node name="SoundHit" type="AudioStreamPlayer2D" parent="."]
-stream = ExtResource("4_5rkwm")
-
-[node name="SoundExplode" type="AudioStreamPlayer2D" parent="."]
-stream = ExtResource("5_t2e2f")

+ 3 - 3
2d/physics_platformer/project.godot

@@ -15,10 +15,10 @@ config/description="This demo uses RigidDynamicBody2D for the player and enemies
 character controllers are more powerful than CharacterBody2D,
 character controllers are more powerful than CharacterBody2D,
 but can be more difficult to handle, as they require
 but can be more difficult to handle, as they require
 manual modification of the RigidDynamicBody3D velocity."
 manual modification of the RigidDynamicBody3D velocity."
+config/tags=PackedStringArray("2d", "demo", "official", "physics", "tilemap")
 run/main_scene="res://stage.tscn"
 run/main_scene="res://stage.tscn"
-config/features=PackedStringArray("4.0")
+config/features=PackedStringArray("4.1")
 config/icon="res://icon.webp"
 config/icon="res://icon.webp"
-config/tags=PackedStringArray("2d", "demo", "official", "physics", "tilemap")
 
 
 [debug]
 [debug]
 
 
@@ -89,7 +89,7 @@ shoot={
 , Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":0,"button_index":2,"pressure":0.0,"pressed":false,"script":null)
 , Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":0,"button_index":2,"pressure":0.0,"pressed":false,"script":null)
 , Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":90,"physical_keycode":0,"key_label":0,"unicode":0,"echo":false,"script":null)
 , Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":90,"physical_keycode":0,"key_label":0,"unicode":0,"echo":false,"script":null)
 , Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":0,"button_index":7,"pressure":0.0,"pressed":false,"script":null)
 , Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":0,"button_index":7,"pressure":0.0,"pressed":false,"script":null)
-, Object(InputEventMouseButton,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"button_mask":0,"position":Vector2(0, 0),"global_position":Vector2(0, 0),"factor":1.0,"button_index":1,"pressed":false,"double_click":false,"script":null)
+, Object(InputEventMouseButton,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"button_mask":0,"position":Vector2(0, 0),"global_position":Vector2(0, 0),"factor":1.0,"button_index":1,"canceled":false,"pressed":false,"double_click":false,"script":null)
 ]
 ]
 }
 }
 spawn={
 spawn={

+ 2 - 2
2d/physics_platformer/stage.tscn

@@ -1,13 +1,13 @@
 [gd_scene load_steps=24 format=3 uid="uid://b53muvlsw1tx3"]
 [gd_scene load_steps=24 format=3 uid="uid://b53muvlsw1tx3"]
 
 
 [ext_resource type="TileSet" uid="uid://rowrak7ls50v" path="res://tileset.tres" id="1"]
 [ext_resource type="TileSet" uid="uid://rowrak7ls50v" path="res://tileset.tres" id="1"]
-[ext_resource type="PackedScene" path="res://coin/coin.tscn" id="2"]
+[ext_resource type="PackedScene" uid="uid://6uilf6rad880" path="res://coin/coin.tscn" id="2"]
 [ext_resource type="PackedScene" uid="uid://dtbrdmojpvetu" path="res://platform/moving_platform.tscn" id="3"]
 [ext_resource type="PackedScene" uid="uid://dtbrdmojpvetu" path="res://platform/moving_platform.tscn" id="3"]
 [ext_resource type="PackedScene" uid="uid://rxbjx7rhfd8k" path="res://background/seesaw.tscn" id="4"]
 [ext_resource type="PackedScene" uid="uid://rxbjx7rhfd8k" path="res://background/seesaw.tscn" id="4"]
 [ext_resource type="PackedScene" uid="uid://dkmxopg1dknq8" path="res://platform/one_way_platform.tscn" id="5"]
 [ext_resource type="PackedScene" uid="uid://dkmxopg1dknq8" path="res://platform/one_way_platform.tscn" id="5"]
 [ext_resource type="PackedScene" uid="uid://bbxsp4gp554vh" path="res://player/player.tscn" id="6_fauva"]
 [ext_resource type="PackedScene" uid="uid://bbxsp4gp554vh" path="res://player/player.tscn" id="6_fauva"]
 [ext_resource type="PackedScene" uid="uid://daqqtote00syu" path="res://enemy/enemy.tscn" id="7"]
 [ext_resource type="PackedScene" uid="uid://daqqtote00syu" path="res://enemy/enemy.tscn" id="7"]
-[ext_resource type="PackedScene" path="res://background/parallax_bg.tscn" id="8"]
+[ext_resource type="PackedScene" uid="uid://csdn3dwkaprow" path="res://background/parallax_bg.tscn" id="8"]
 [ext_resource type="AudioStream" uid="uid://gunv00cij80t" path="res://audio/music.ogg" id="9"]
 [ext_resource type="AudioStream" uid="uid://gunv00cij80t" path="res://audio/music.ogg" id="9"]
 
 
 [sub_resource type="Animation" id="Animation_oxal6"]
 [sub_resource type="Animation" id="Animation_oxal6"]