diff --git a/asset/art/临时草稿/ghost-sheet.png b/asset/art/临时草稿/c01_序章/ghost-sheet.png similarity index 100% rename from asset/art/临时草稿/ghost-sheet.png rename to asset/art/临时草稿/c01_序章/ghost-sheet.png diff --git a/asset/art/临时草稿/ghost-sheet.png.import b/asset/art/临时草稿/c01_序章/ghost-sheet.png.import similarity index 69% rename from asset/art/临时草稿/ghost-sheet.png.import rename to asset/art/临时草稿/c01_序章/ghost-sheet.png.import index c1dc4f40..8c1d8739 100644 --- a/asset/art/临时草稿/ghost-sheet.png.import +++ b/asset/art/临时草稿/c01_序章/ghost-sheet.png.import @@ -3,15 +3,15 @@ importer="texture" type="CompressedTexture2D" uid="uid://wvnpr0w3srtr" -path="res://.godot/imported/ghost-sheet.png-b0ae6f2c371a730d2abf0df2867d0094.ctex" +path="res://.godot/imported/ghost-sheet.png-fd0ed1a0a1580aa9bba0ac20527fbdcd.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://asset/art/临时草稿/ghost-sheet.png" -dest_files=["res://.godot/imported/ghost-sheet.png-b0ae6f2c371a730d2abf0df2867d0094.ctex"] +source_file="res://asset/art/临时草稿/c01_序章/ghost-sheet.png" +dest_files=["res://.godot/imported/ghost-sheet.png-fd0ed1a0a1580aa9bba0ac20527fbdcd.ctex"] [params] diff --git a/asset/art/临时草稿/ghost.png b/asset/art/临时草稿/c01_序章/ghost.png similarity index 100% rename from asset/art/临时草稿/ghost.png rename to asset/art/临时草稿/c01_序章/ghost.png diff --git a/asset/art/临时草稿/ghost.png.import b/asset/art/临时草稿/c01_序章/ghost.png.import similarity index 71% rename from asset/art/临时草稿/ghost.png.import rename to asset/art/临时草稿/c01_序章/ghost.png.import index 7af0a476..35f0aceb 100644 --- a/asset/art/临时草稿/ghost.png.import +++ b/asset/art/临时草稿/c01_序章/ghost.png.import @@ -3,15 +3,15 @@ importer="texture" type="CompressedTexture2D" uid="uid://dryx1iyict3gd" -path="res://.godot/imported/ghost.png-be8d53dbf62bca42bbf3c61f27140309.ctex" +path="res://.godot/imported/ghost.png-68c970ef18f4992531a7fb7b8fd05408.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://asset/art/临时草稿/ghost.png" -dest_files=["res://.godot/imported/ghost.png-be8d53dbf62bca42bbf3c61f27140309.ctex"] +source_file="res://asset/art/临时草稿/c01_序章/ghost.png" +dest_files=["res://.godot/imported/ghost.png-68c970ef18f4992531a7fb7b8fd05408.ctex"] [params] diff --git a/asset/art/临时草稿/纸片.png b/asset/art/临时草稿/c01_序章/纸片.png similarity index 100% rename from asset/art/临时草稿/纸片.png rename to asset/art/临时草稿/c01_序章/纸片.png diff --git a/asset/art/临时草稿/纸片.png.import b/asset/art/临时草稿/c01_序章/纸片.png.import similarity index 70% rename from asset/art/临时草稿/纸片.png.import rename to asset/art/临时草稿/c01_序章/纸片.png.import index bfdd12b0..642d979e 100644 --- a/asset/art/临时草稿/纸片.png.import +++ b/asset/art/临时草稿/c01_序章/纸片.png.import @@ -3,15 +3,15 @@ importer="texture" type="CompressedTexture2D" uid="uid://cx8ny1barwdwy" -path="res://.godot/imported/纸片.png-a8bd0177d01abb04bca508d0a6f52ec4.ctex" +path="res://.godot/imported/纸片.png-9104f73d086c6ee0e16c1ef27489823e.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://asset/art/临时草稿/纸片.png" -dest_files=["res://.godot/imported/纸片.png-a8bd0177d01abb04bca508d0a6f52ec4.ctex"] +source_file="res://asset/art/临时草稿/c01_序章/纸片.png" +dest_files=["res://.godot/imported/纸片.png-9104f73d086c6ee0e16c1ef27489823e.ctex"] [params] diff --git a/asset/art/临时草稿/纸片_正面.png b/asset/art/临时草稿/c01_序章/纸片_正面.png similarity index 100% rename from asset/art/临时草稿/纸片_正面.png rename to asset/art/临时草稿/c01_序章/纸片_正面.png diff --git a/asset/art/临时草稿/纸片_正面.png.import b/asset/art/临时草稿/c01_序章/纸片_正面.png.import similarity index 69% rename from asset/art/临时草稿/纸片_正面.png.import rename to asset/art/临时草稿/c01_序章/纸片_正面.png.import index 318245c5..4167f95a 100644 --- a/asset/art/临时草稿/纸片_正面.png.import +++ b/asset/art/临时草稿/c01_序章/纸片_正面.png.import @@ -3,15 +3,15 @@ importer="texture" type="CompressedTexture2D" uid="uid://c6vi6umco6o0a" -path="res://.godot/imported/纸片_正面.png-42b654938cd8738cd210ea618ad1b29d.ctex" +path="res://.godot/imported/纸片_正面.png-b3eff97e26be42ec2e9fc396225adbb2.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://asset/art/临时草稿/纸片_正面.png" -dest_files=["res://.godot/imported/纸片_正面.png-42b654938cd8738cd210ea618ad1b29d.ctex"] +source_file="res://asset/art/临时草稿/c01_序章/纸片_正面.png" +dest_files=["res://.godot/imported/纸片_正面.png-b3eff97e26be42ec2e9fc396225adbb2.ctex"] [params] diff --git a/asset/art/临时草稿/生死簿/生死簿.png b/asset/art/临时草稿/生死簿/生死簿.png new file mode 100644 index 00000000..30821a25 Binary files /dev/null and b/asset/art/临时草稿/生死簿/生死簿.png differ diff --git a/asset/art/临时草稿/生死簿/生死簿.png.import b/asset/art/临时草稿/生死簿/生死簿.png.import new file mode 100644 index 00000000..0269517e --- /dev/null +++ b/asset/art/临时草稿/生死簿/生死簿.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://cndai8whwoytn" +path="res://.godot/imported/生死簿.png-9e0db0f43d213880f862d1ac0028c5b0.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://asset/art/临时草稿/生死簿/生死簿.png" +dest_files=["res://.godot/imported/生死簿.png-9e0db0f43d213880f862d1ac0028c5b0.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/asset/art/临时草稿/生死簿/生死簿名字.png b/asset/art/临时草稿/生死簿/生死簿名字.png new file mode 100644 index 00000000..a9039026 Binary files /dev/null and b/asset/art/临时草稿/生死簿/生死簿名字.png differ diff --git a/asset/art/临时草稿/生死簿/生死簿名字.png.import b/asset/art/临时草稿/生死簿/生死簿名字.png.import new file mode 100644 index 00000000..786cc2e1 --- /dev/null +++ b/asset/art/临时草稿/生死簿/生死簿名字.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://cpfpxox5q5ql3" +path="res://.godot/imported/生死簿名字.png-afb8dbf8ccc3016d7d4bed6879fab76b.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://asset/art/临时草稿/生死簿/生死簿名字.png" +dest_files=["res://.godot/imported/生死簿名字.png-afb8dbf8ccc3016d7d4bed6879fab76b.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/asset/art/临时草稿/生死簿/陆小蝶名字.png b/asset/art/临时草稿/生死簿/陆小蝶名字.png new file mode 100644 index 00000000..1e1fffce Binary files /dev/null and b/asset/art/临时草稿/生死簿/陆小蝶名字.png differ diff --git a/asset/art/临时草稿/生死簿/陆小蝶名字.png.import b/asset/art/临时草稿/生死簿/陆小蝶名字.png.import new file mode 100644 index 00000000..4081c427 --- /dev/null +++ b/asset/art/临时草稿/生死簿/陆小蝶名字.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://d4n4e3lid3tu2" +path="res://.godot/imported/陆小蝶名字.png-8108706d0ed00a19530aea4b52059bef.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://asset/art/临时草稿/生死簿/陆小蝶名字.png" +dest_files=["res://.godot/imported/陆小蝶名字.png-8108706d0ed00a19530aea4b52059bef.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/asset/shader/glitcheffect.gdshader b/asset/shader/glitcheffect.gdshader index 411e7e8c..a92d8085 100644 --- a/asset/shader/glitcheffect.gdshader +++ b/asset/shader/glitcheffect.gdshader @@ -1,6 +1,6 @@ /* https://godotshaders.com/shader/glitch-effect-shader-for-godot-engine-4/ - + Glitch Effect Shader by Yui Kinomoto @arlez80 MIT License */ diff --git a/asset/shader/未使用/balatro_fire.gdshader b/asset/shader/未使用/balatro_fire.gdshader index 144ef882..87c13cc1 100644 --- a/asset/shader/未使用/balatro_fire.gdshader +++ b/asset/shader/未使用/balatro_fire.gdshader @@ -21,30 +21,30 @@ vec4 tri_color_mix(vec4 color1, vec4 color2, vec4 color3, float pos) { void fragment() { // Scale UVs to make the noise more visible vec2 base_uv = UV * 1.0; - + // Create two layers of noise with different speeds vec2 shifted_uv1 = base_uv + TIME * fire_speed; vec2 shifted_uv2 = base_uv + TIME * fire_speed * 1.5; - + // Sample noise texture twice float fire_noise1 = texture(noise_tex, fract(shifted_uv1)).r; float fire_noise2 = texture(noise_tex, fract(shifted_uv2)).r; - + // Combine the noise samples float combined_noise = (fire_noise1 + fire_noise2) * 0.5; - + // Calculate fire shape float noise = UV.y * (((UV.y + fire_aperture) * combined_noise - fire_aperture) * 75.0); - + // Add horizontal movement noise += sin(UV.y * 10.0 + TIME * 2.0) * 0.1; - + // Calculate gradient position and mix three colors float gradient_pos = clamp(noise * 0.08, 0.3, 2.0); //vec4 smoth_mid_color = smoothstep(top_color, middle_color, vec4(1)); vec4 fire_color = tri_color_mix(bottom_color, middle_color, top_color, gradient_pos); - - + + // Set final color and alpha COLOR = fire_color; diff --git a/scene/ground/script/c01/s12_飘动的寻人启事.tscn b/scene/ground/script/c01/s12_飘动的寻人启事.tscn index 1cf31ad8..7bdd53f7 100644 --- a/scene/ground/script/c01/s12_飘动的寻人启事.tscn +++ b/scene/ground/script/c01/s12_飘动的寻人启事.tscn @@ -2,7 +2,7 @@ [ext_resource type="Script" path="res://scene/ground/script/c01/s12_飘动的寻人启事.gd" id="1_like6"] [ext_resource type="Shader" path="res://asset/shader/rotation_displacement_vertex.gdshader" id="2_2w1m2"] -[ext_resource type="Texture2D" uid="uid://c6vi6umco6o0a" path="res://asset/art/临时草稿/纸片_正面.png" id="3_dl751"] +[ext_resource type="Texture2D" uid="uid://c6vi6umco6o0a" path="res://asset/art/临时草稿/c01_序章/纸片_正面.png" id="3_dl751"] [sub_resource type="ShaderMaterial" id="ShaderMaterial_q4vn8"] shader = ExtResource("2_2w1m2") diff --git a/scene/little_game/书架/生死簿.gd b/scene/little_game/书架/生死簿.gd new file mode 100644 index 00000000..09b4b345 --- /dev/null +++ b/scene/little_game/书架/生死簿.gd @@ -0,0 +1,10 @@ +extends CanvasLayer + +@onready var signature = %"陆小蝶" + +func _ready() -> void: + layer = GlobalConfig.LAYER_LITTLE_GAME + # SceneManager.pop_center_notification(tr("input_拼凑信件")) + signature.visible = false + # test + get_tree().create_timer(3.0).timeout.connect(signature.play) diff --git a/scene/little_game/书架/生死簿.tscn b/scene/little_game/书架/生死簿.tscn index 5133465f..31bcd428 100644 --- a/scene/little_game/书架/生死簿.tscn +++ b/scene/little_game/书架/生死簿.tscn @@ -1,7 +1,148 @@ -[gd_scene format=3 uid="uid://bl5pohc77hi43"] +[gd_scene load_steps=11 format=3 uid="uid://bl5pohc77hi43"] -[node name="生死簿" type="Node2D"] +[ext_resource type="Texture2D" uid="uid://cndai8whwoytn" path="res://asset/art/临时草稿/生死簿/生死簿.png" id="1_7k4qj"] +[ext_resource type="Script" path="res://scene/little_game/书架/生死簿.gd" id="1_wipr2"] +[ext_resource type="PackedScene" uid="uid://c85t6stvytvjn" path="res://scene/entity/general/sfx.tscn" id="3_17f8x"] +[ext_resource type="Texture2D" uid="uid://d4n4e3lid3tu2" path="res://asset/art/临时草稿/生死簿/陆小蝶名字.png" id="3_858cl"] +[ext_resource type="Texture2D" uid="uid://cpfpxox5q5ql3" path="res://asset/art/临时草稿/生死簿/生死簿名字.png" id="3_wngb0"] +[ext_resource type="Script" path="res://scene/little_game/书架/陆小蝶名字.gd" id="4_dssaj"] +[ext_resource type="AudioStream" uid="uid://c26x8f18w6is0" path="res://asset/audio/sfx/c02/撞到柜子.mp3" id="4_jifnx"] -[node name="p1" type="Sprite2D" parent="."] +[sub_resource type="AtlasTexture" id="AtlasTexture_isheb"] +atlas = ExtResource("3_wngb0") +region = Rect2(9, 5, 40, 75) -[node name="p2" type="Sprite2D" parent="."] +[sub_resource type="AtlasTexture" id="AtlasTexture_wk6af"] +atlas = ExtResource("3_wngb0") +region = Rect2(56, 8, 28, 68) + +[sub_resource type="AtlasTexture" id="AtlasTexture_b5epk"] +atlas = ExtResource("3_wngb0") +region = Rect2(105, 6, 29, 70) + +[node name="生死簿" type="CanvasLayer"] +layer = 11 +script = ExtResource("1_wipr2") + +[node name="SfxStamp" parent="." instance=ExtResource("3_17f8x")] +stream = ExtResource("4_jifnx") +dir = "c02" +file = "撞到柜子.mp3" + +[node name="bg" type="TextureRect" parent="."] +anchors_preset = 14 +anchor_top = 0.5 +anchor_right = 1.0 +anchor_bottom = 0.5 +offset_top = -100.0 +offset_bottom = 100.0 +grow_horizontal = 2 +grow_vertical = 2 +mouse_filter = 2 +texture = ExtResource("1_7k4qj") +stretch_mode = 5 + +[node name="p1" type="TextureRect" parent="bg"] +layout_mode = 0 +offset_top = -58.0 +offset_bottom = -58.0 +mouse_filter = 2 +stretch_mode = 5 + +[node name="陆小蝶" type="Sprite2D" parent="bg"] +unique_name_in_owner = true +modulate = Color(0.503203, 0.320866, 0.30312, 1) +position = Vector2(340, 103) +texture = ExtResource("3_858cl") +script = ExtResource("4_dssaj") +area_size = Vector2(100, 150) + +[node name="seal1" type="Sprite2D" parent="bg/陆小蝶"] +modulate = Color(0.710006, 0.41208, 0.953067, 1) +scale = Vector2(0.5, 0.5) +texture = SubResource("AtlasTexture_isheb") + +[node name="seal2" type="Sprite2D" parent="bg/陆小蝶"] +modulate = Color(0.710006, 0.41208, 0.953067, 1) +scale = Vector2(0.5, 0.5) +texture = SubResource("AtlasTexture_wk6af") + +[node name="seal3" type="Sprite2D" parent="bg/陆小蝶"] +modulate = Color(0.710006, 0.41208, 0.953067, 1) +scale = Vector2(0.5, 0.5) +texture = SubResource("AtlasTexture_b5epk") + +[node name="seal4" type="Sprite2D" parent="bg/陆小蝶"] +modulate = Color(0.710006, 0.41208, 0.953067, 1) +scale = Vector2(0.5, 0.5) +texture = SubResource("AtlasTexture_isheb") + +[node name="seal5" type="Sprite2D" parent="bg/陆小蝶"] +modulate = Color(0.710006, 0.41208, 0.953067, 1) +scale = Vector2(0.5, 0.5) +texture = SubResource("AtlasTexture_wk6af") + +[node name="seal6" type="Sprite2D" parent="bg/陆小蝶"] +modulate = Color(0.710006, 0.41208, 0.953067, 1) +scale = Vector2(0.5, 0.5) +texture = SubResource("AtlasTexture_b5epk") + +[node name="seal7" type="Sprite2D" parent="bg/陆小蝶"] +modulate = Color(0.710006, 0.41208, 0.953067, 1) +scale = Vector2(0.5, 0.5) +texture = SubResource("AtlasTexture_isheb") + +[node name="seal8" type="Sprite2D" parent="bg/陆小蝶"] +modulate = Color(0.710006, 0.41208, 0.953067, 1) +scale = Vector2(0.5, 0.5) +texture = SubResource("AtlasTexture_wk6af") + +[node name="seal9" type="Sprite2D" parent="bg/陆小蝶"] +modulate = Color(0.710006, 0.41208, 0.953067, 1) +scale = Vector2(0.5, 0.5) +texture = SubResource("AtlasTexture_b5epk") + +[node name="seal10" type="Sprite2D" parent="bg/陆小蝶"] +modulate = Color(0.710006, 0.41208, 0.953067, 1) +scale = Vector2(0.5, 0.5) +texture = SubResource("AtlasTexture_isheb") + +[node name="seal11" type="Sprite2D" parent="bg/陆小蝶"] +modulate = Color(0.710006, 0.41208, 0.953067, 1) +scale = Vector2(0.5, 0.5) +texture = SubResource("AtlasTexture_wk6af") + +[node name="seal12" type="Sprite2D" parent="bg/陆小蝶"] +modulate = Color(0.710006, 0.41208, 0.953067, 1) +scale = Vector2(0.5, 0.5) +texture = SubResource("AtlasTexture_b5epk") + +[node name="seal13" type="Sprite2D" parent="bg/陆小蝶"] +modulate = Color(0.710006, 0.41208, 0.953067, 1) +scale = Vector2(0.5, 0.5) +texture = SubResource("AtlasTexture_isheb") + +[node name="seal14" type="Sprite2D" parent="bg/陆小蝶"] +modulate = Color(0.710006, 0.41208, 0.953067, 1) +scale = Vector2(0.5, 0.5) +texture = SubResource("AtlasTexture_wk6af") + +[node name="seal15" type="Sprite2D" parent="bg/陆小蝶"] +modulate = Color(0.710006, 0.41208, 0.953067, 1) +scale = Vector2(0.5, 0.5) +texture = SubResource("AtlasTexture_b5epk") + +[node name="seal16" type="Sprite2D" parent="bg/陆小蝶"] +modulate = Color(0.710006, 0.41208, 0.953067, 1) +scale = Vector2(0.5, 0.5) +texture = SubResource("AtlasTexture_isheb") + +[node name="seal17" type="Sprite2D" parent="bg/陆小蝶"] +modulate = Color(0.710006, 0.41208, 0.953067, 1) +scale = Vector2(0.5, 0.5) +texture = SubResource("AtlasTexture_wk6af") + +[node name="seal18" type="Sprite2D" parent="bg/陆小蝶"] +modulate = Color(0.710006, 0.41208, 0.953067, 1) +scale = Vector2(0.5, 0.5) +texture = SubResource("AtlasTexture_b5epk") diff --git a/scene/little_game/书架/陆小蝶名字.gd b/scene/little_game/书架/陆小蝶名字.gd new file mode 100644 index 00000000..ef766ce0 --- /dev/null +++ b/scene/little_game/书架/陆小蝶名字.gd @@ -0,0 +1,58 @@ +@tool +extends Sprite2D + +@export var area_size := Vector2(60, 60): + set(val): + area_size = val + queue_redraw() +@export var gizmo_outline_color := Color(0.8, 0.3, 0.1, 0.8): + set(val): + gizmo_outline_color = val + queue_redraw() + + +func play() -> void: + visible = true + var tween = create_tween() + tween.tween_interval(3.0) + tween.tween_property(self, "self_modulate:a", 0.0, 15.0) + var final_modulate = Color.PALE_VIOLET_RED + tween.parallel().tween_property(get_parent(), "modulate", final_modulate, 15.0) + tween = create_tween() + var interval = 3. + for c in self.get_children(): + c.visible = false + tween.tween_interval(interval) + tween.tween_callback(_stamp_seal.bind(c)) + interval = max(interval - 0.3, 0.4) + + +func _stamp_seal(seal: Sprite2D) -> void: + # rand self_modulate + seal.self_modulate = Color(randf_range(.8, 1.), randf_range(.8, 1.), randf_range(.8, 1.), 1.) + # rand rotation + seal.rotation = randf_range(-1., 1.) + # rand position within area + seal.position = Vector2( + randf_range(-area_size.x * 0.5, area_size.x * 0.5), + randf_range(-area_size.y * 0.5, area_size.y * 0.5) + ) + # stamp + $"../../SfxStamp".play() + # show + seal.visible = true + var origin_scale = seal.scale + create_tween().tween_property(seal, "scale", origin_scale * Vector2(1.05, 1.05), .1) + create_tween().tween_property(seal, "scale", origin_scale * Vector2(1.0, 1.), .1) + + +func _draw() -> void: + if Engine.is_editor_hint(): + # draw gizmo + var area_rect = Rect2(-area_size * 0.5, area_size) + # fill + var fill_color = gizmo_outline_color + fill_color.a = 0.4 + draw_rect(area_rect, fill_color) + # outline + draw_rect(area_rect, gizmo_outline_color, false, 1.0) diff --git a/scene/shading/ghost.tscn b/scene/shading/ghost.tscn index c941d3b5..af295ce5 100644 --- a/scene/shading/ghost.tscn +++ b/scene/shading/ghost.tscn @@ -1,7 +1,7 @@ [gd_scene load_steps=9 format=3 uid="uid://h0s5ms7r7d8g"] [ext_resource type="Shader" path="res://scene/shading/ghost.gdshader" id="1_n4q4i"] -[ext_resource type="Texture2D" uid="uid://wvnpr0w3srtr" path="res://asset/art/临时草稿/ghost-sheet.png" id="2_vp102"] +[ext_resource type="Texture2D" uid="uid://wvnpr0w3srtr" path="res://asset/art/临时草稿/c01_序章/ghost-sheet.png" id="2_vp102"] [ext_resource type="Texture2D" uid="uid://bc64s5xfysrc3" path="res://asset/art/scene/c01/s07_书店外/bg_书店外_夜晚.png" id="4_lap87"] [sub_resource type="ShaderMaterial" id="ShaderMaterial_fv2fx"]