diff --git a/README.md b/README.md index dcd50d41..ec04f08a 100644 --- a/README.md +++ b/README.md @@ -43,9 +43,8 @@ GroundLoader 加载/切换 Ground 时,分为上下两段转场: - 下半段(新场景出现):先暂停,在完全出现后再运行 【特殊注意⚠️】 - AnimationPlayer 的 process_mode 并非 inderited,而是 pausable。这意味着 AnimationPlayer 的 _on_ground_ready 在转场时仍旧可以直接运行。 - - 同样独立设置的还有 Sfx/Sfx2D,它们仍旧可以播放音频直到上半段转场结束 - CameraFocusMarker 也需要如此,以确保镜头快速拉到指定位置 - - 盒子 canvas layer + - 盒子猫游戏中的 canvas layer - 一些 npc、player 大运行脚本会被中断。如果想让它们仍旧运行,需设置为 pausable。 @@ -148,14 +147,25 @@ current_scene 是通过 GroundLoader 加载的,在 ground loader 加载 ground # 重大更新日志(功能) -- Sign 触发机制,图标位置管理 -- GroundArchive:场景内 namespace 隔离,内部需要保证节点名 unique +- Sign 触发机制 + - 唯一触发器,关注各节点唯一占有 occupied 状态,与全局 hold/unhold (禁止操作)状态 + - 管理图标贴图(unrevealed / matched / ...)与位置 +- GroundArchive:场景内 namespace 隔离 + - 内部需要保证节点名 unique - 基础节点:Inspectable,Ambush,Note,Interactable,Closeup,Npc - [#ban_skip] 与 IGNORE_INPUT : 前者 debug 可跳过,后者总不可跳过 - PropHud 切换与点击展示 + - 左键点击展开 Hud + - 右键点击检阅道具 - SignSnapper 拉动机制 + - 自动锁定玩家操作,调用 walk_to 指定位置 + - 自动优化范围:忽略小范围移动以防抽动,最低活动距离 - ReenterLock 机制 + - 可重入锁 + - Editor 中运行可 Debug 输出调用位置(调用 lock 的代码文件&代码行) - Vibe Sfx & Manager -- 转场 process 机制优化:暂停 & sfx 等保持运行 + - 全局音效控制 + - 影响 SignSnapper 的等待时长(如 Boss 战时加快节奏) +- 转场 process 机制优化:暂停 & AnimationPlayer 保持运行 - EventManager 控制事件,使用 Event2D 控制绑定关系 - Vibe Control 控制氛围情绪音乐 diff --git a/addons/property-inspector/pro_animation_sprite2d/pro_animated_sprite.gd b/addons/property-inspector/pro_animation_sprite2d/pro_animated_sprite.gd index 68a05682..0aba80ef 100644 --- a/addons/property-inspector/pro_animation_sprite2d/pro_animated_sprite.gd +++ b/addons/property-inspector/pro_animation_sprite2d/pro_animated_sprite.gd @@ -16,6 +16,14 @@ class_name ProAnimatedSprite2D extends AnimatedSprite2D light_energy = val * modulate.a @export var debug_mov_animation := "" @export_tool_button("debug 刷新 mov 目标") var debug_mov_projection := _debug_mov_projection +@export var debug_playing := false: + set(val): + if debug_playing != val: + debug_playing = val + if not val: + position = debug_play_start_position + +@export_tool_button("debug play") var debug_play := _debug_play const ACTION_CONFIG = { "animation_intro": "", "intro_loop": 1, "animation_wait_time": 0.0, "animation_next": "" @@ -58,13 +66,14 @@ func _ready() -> void: frame_changed.connect(_on_frame_changed) if Engine.is_editor_hint(): _debug_mov_projection() - return + else: + debug_mov_onion_sprite2d.queue_free() _load_config() - debug_mov_onion_sprite2d.queue_free() if autostart and animation: # 制造一点错差 frame = randi() % sprite_frames.get_frame_count(animation) - play() + if not Engine.is_editor_hint() or debug_playing: + play() animation_changed.connect(_on_animation_start) animation_looped.connect(_on_animation_start) animation_finished.connect(_on_animation_finished) @@ -76,7 +85,9 @@ func _debug_mov_projection(): if debug_mov_animation and animation_mov_dict.has(debug_mov_animation): var mov_config = animation_mov_dict[debug_mov_animation] # 展示 accumulated animation 的目标位置 - debug_mov_onion_sprite2d.position.x = mov_config.movement_x * (-1 if flip_h else 1) / scale.x + debug_mov_onion_sprite2d.position.x = ( + mov_config.movement_x * (-1 if flip_h else 1) / scale.x + ) debug_mov_onion_sprite2d.texture = sprite_frames.get_frame_texture(debug_mov_animation, 0) debug_mov_onion_sprite2d.flip_h = flip_h elif debug_mov_animation: @@ -128,7 +139,7 @@ func _on_animation_finished() -> void: var next = auto_checkout_dict[intro].animation_next if wait_time > 0: pause() - Util.timer(wait_time, play.bind(next)) + Util.timer(wait_time, play.bind(next)) else: play(next) @@ -158,7 +169,7 @@ func _on_animation_start(): func _physics_process(delta: float) -> void: - if Engine.is_editor_hint() or not velocity or not is_playing(): + if (not debug_playing and Engine.is_editor_hint()) or not velocity or not is_playing(): return var diff_x = velocity.x * delta if flip_h: @@ -212,3 +223,13 @@ func play_with_loop(anim: String, loop := -1, wait := 0.0, next := "") -> void: } # 设置完配置后播放 play(anim) + + +##### TOOL BUTTON +var debug_play_start_position: Vector2 + + +func _debug_play(): + debug_play_start_position = position + debug_playing = true + play() diff --git a/asset/art/gif/c02_空房间/ux_小蝉头套特写.png b/asset/art/gif/c02_空房间/ux_小蝉头套特写.png deleted file mode 100644 index 65470e6f..00000000 Binary files a/asset/art/gif/c02_空房间/ux_小蝉头套特写.png and /dev/null differ diff --git a/asset/art/gif/c03_三楼/c03_三楼_frames.tres b/asset/art/gif/c03_三楼/c03_三楼_frames.tres new file mode 100644 index 00000000..cf61f6c9 --- /dev/null +++ b/asset/art/gif/c03_三楼/c03_三楼_frames.tres @@ -0,0 +1,59 @@ +[gd_resource type="SpriteFrames" load_steps=12 format=3 uid="uid://cljrkkmy2pwdp"] + +[ext_resource type="Texture2D" path="res://asset/art/gif/c03_三楼/三楼窗户动画/0.png" id="1_638l7"] +[ext_resource type="Texture2D" path="res://asset/art/gif/c03_三楼/三楼窗户动画/1.png" id="2_nl5dv"] +[ext_resource type="Texture2D" path="res://asset/art/gif/c03_三楼/三楼窗户动画/2.png" id="3_fneuh"] +[ext_resource type="Texture2D" path="res://asset/art/gif/c03_三楼/三楼窗户动画/3.png" id="4_fmw1k"] +[ext_resource type="Texture2D" path="res://asset/art/gif/c03_三楼/三楼窗户动画/4.png" id="5_2o31u"] +[ext_resource type="Texture2D" path="res://asset/art/gif/c03_三楼/三楼窗户动画/5.png" id="6_texvw"] +[ext_resource type="Texture2D" path="res://asset/art/gif/c03_三楼/三楼窗户动画/6.png" id="7_cr48g"] +[ext_resource type="Texture2D" path="res://asset/art/gif/c03_三楼/三楼窗户动画/7.png" id="8_v8byt"] +[ext_resource type="Texture2D" path="res://asset/art/gif/c03_三楼/三楼窗户动画/8.png" id="9_o63c7"] +[ext_resource type="Texture2D" path="res://asset/art/gif/c03_三楼/三楼窗户动画/9.png" id="10_jhtld"] +[ext_resource type="Texture2D" path="res://asset/art/gif/c03_三楼/三楼窗户动画/10.png" id="11_6lgaf"] + +[resource] +animations = [{ +"frames": [], +"loop": true, +"name": &"default", +"speed": 5.0 +}, { +"frames": [{ +"duration": 3.9, +"texture": ExtResource("1_638l7") +}, { +"duration": 15.9, +"texture": ExtResource("2_nl5dv") +}, { +"duration": 2.1, +"texture": ExtResource("3_fneuh") +}, { +"duration": 3.0, +"texture": ExtResource("4_fmw1k") +}, { +"duration": 17.1, +"texture": ExtResource("5_2o31u") +}, { +"duration": 3.0, +"texture": ExtResource("6_texvw") +}, { +"duration": 3.0, +"texture": ExtResource("7_cr48g") +}, { +"duration": 15.9, +"texture": ExtResource("8_v8byt") +}, { +"duration": 2.1, +"texture": ExtResource("9_o63c7") +}, { +"duration": 5.1, +"texture": ExtResource("10_jhtld") +}, { +"duration": 18.0, +"texture": ExtResource("11_6lgaf") +}], +"loop": true, +"name": &"三楼窗户动画", +"speed": 30.0 +}] diff --git a/asset/art/gif/c03_三楼/三楼窗户动画.gif b/asset/art/gif/c03_三楼/三楼窗户动画.gif new file mode 100644 index 00000000..c3da32fc Binary files /dev/null and b/asset/art/gif/c03_三楼/三楼窗户动画.gif differ diff --git a/asset/art/gif/c03_三楼/三楼窗户动画.gif.import b/asset/art/gif/c03_三楼/三楼窗户动画.gif.import new file mode 100644 index 00000000..11ce0407 --- /dev/null +++ b/asset/art/gif/c03_三楼/三楼窗户动画.gif.import @@ -0,0 +1,14 @@ +[remap] + +importer="gif.animated.texture.plugin" +type="SpriteFrames" +uid="uid://cgdfidynpm3gp" +path="res://.godot/imported/三楼窗户动画.gif-4eb4230112d176a2b61268cba9a404ea.tres" + +[deps] + +source_file="res://asset/art/gif/c03_三楼/三楼窗户动画.gif" +dest_files=["res://.godot/imported/三楼窗户动画.gif-4eb4230112d176a2b61268cba9a404ea.tres"] + +[params] + diff --git a/asset/art/gif/c03_三楼/三楼窗户动画/0.png b/asset/art/gif/c03_三楼/三楼窗户动画/0.png new file mode 100644 index 00000000..0155db9d Binary files /dev/null and b/asset/art/gif/c03_三楼/三楼窗户动画/0.png differ diff --git a/asset/art/scene/c01/s02_旧版序章/f_序章标题.png.import b/asset/art/gif/c03_三楼/三楼窗户动画/0.png.import similarity index 65% rename from asset/art/scene/c01/s02_旧版序章/f_序章标题.png.import rename to asset/art/gif/c03_三楼/三楼窗户动画/0.png.import index d58b1a3f..48c8267f 100644 --- a/asset/art/scene/c01/s02_旧版序章/f_序章标题.png.import +++ b/asset/art/gif/c03_三楼/三楼窗户动画/0.png.import @@ -2,16 +2,16 @@ importer="texture" type="CompressedTexture2D" -uid="uid://dcnbfdgbsyeey" -path="res://.godot/imported/f_序章标题.png-a6d601409d9fd3b97cff6b0086d359be.ctex" +uid="uid://wmi5qfusoc6r" +path="res://.godot/imported/0.png-de2175bd6e3b9b6d3b0849e0425a8ab0.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://asset/art/scene/c01/s02_旧版序章/f_序章标题.png" -dest_files=["res://.godot/imported/f_序章标题.png-a6d601409d9fd3b97cff6b0086d359be.ctex"] +source_file="res://asset/art/gif/c03_三楼/三楼窗户动画/0.png" +dest_files=["res://.godot/imported/0.png-de2175bd6e3b9b6d3b0849e0425a8ab0.ctex"] [params] diff --git a/asset/art/gif/c03_三楼/三楼窗户动画/1.png b/asset/art/gif/c03_三楼/三楼窗户动画/1.png new file mode 100644 index 00000000..6d49961a Binary files /dev/null and b/asset/art/gif/c03_三楼/三楼窗户动画/1.png differ diff --git a/asset/art/gif/c03_三楼/三楼窗户动画/1.png.import b/asset/art/gif/c03_三楼/三楼窗户动画/1.png.import new file mode 100644 index 00000000..f66e3ab0 --- /dev/null +++ b/asset/art/gif/c03_三楼/三楼窗户动画/1.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://bj3mpwu8ocpma" +path="res://.godot/imported/1.png-ebea6dd14afaa8de40ca72684e50b62a.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://asset/art/gif/c03_三楼/三楼窗户动画/1.png" +dest_files=["res://.godot/imported/1.png-ebea6dd14afaa8de40ca72684e50b62a.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/gif/c03_三楼/三楼窗户动画/10.png b/asset/art/gif/c03_三楼/三楼窗户动画/10.png new file mode 100644 index 00000000..a465b9ae Binary files /dev/null and b/asset/art/gif/c03_三楼/三楼窗户动画/10.png differ diff --git a/asset/art/gif/c03_三楼/三楼窗户动画/10.png.import b/asset/art/gif/c03_三楼/三楼窗户动画/10.png.import new file mode 100644 index 00000000..6212d092 --- /dev/null +++ b/asset/art/gif/c03_三楼/三楼窗户动画/10.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://bkujjii8fgdl4" +path="res://.godot/imported/10.png-f57031390169fa8f66b8a841142bfa3f.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://asset/art/gif/c03_三楼/三楼窗户动画/10.png" +dest_files=["res://.godot/imported/10.png-f57031390169fa8f66b8a841142bfa3f.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/gif/c03_三楼/三楼窗户动画/2.png b/asset/art/gif/c03_三楼/三楼窗户动画/2.png new file mode 100644 index 00000000..9681ab9e Binary files /dev/null and b/asset/art/gif/c03_三楼/三楼窗户动画/2.png differ diff --git a/asset/art/gif/c03_三楼/三楼窗户动画/2.png.import b/asset/art/gif/c03_三楼/三楼窗户动画/2.png.import new file mode 100644 index 00000000..97e9d9a1 --- /dev/null +++ b/asset/art/gif/c03_三楼/三楼窗户动画/2.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://bf5ioldgjjl3o" +path="res://.godot/imported/2.png-a2ac750ddd1b069f276063e6cdf3d281.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://asset/art/gif/c03_三楼/三楼窗户动画/2.png" +dest_files=["res://.godot/imported/2.png-a2ac750ddd1b069f276063e6cdf3d281.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/gif/c03_三楼/三楼窗户动画/3.png b/asset/art/gif/c03_三楼/三楼窗户动画/3.png new file mode 100644 index 00000000..34592eda Binary files /dev/null and b/asset/art/gif/c03_三楼/三楼窗户动画/3.png differ diff --git a/asset/art/gif/c03_三楼/三楼窗户动画/3.png.import b/asset/art/gif/c03_三楼/三楼窗户动画/3.png.import new file mode 100644 index 00000000..8bea8796 --- /dev/null +++ b/asset/art/gif/c03_三楼/三楼窗户动画/3.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://c38cl6nof6myf" +path="res://.godot/imported/3.png-946268593ce92b844452b4f03491cf4c.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://asset/art/gif/c03_三楼/三楼窗户动画/3.png" +dest_files=["res://.godot/imported/3.png-946268593ce92b844452b4f03491cf4c.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/gif/c03_三楼/三楼窗户动画/4.png b/asset/art/gif/c03_三楼/三楼窗户动画/4.png new file mode 100644 index 00000000..a465b9ae Binary files /dev/null and b/asset/art/gif/c03_三楼/三楼窗户动画/4.png differ diff --git a/asset/art/gif/c03_三楼/三楼窗户动画/4.png.import b/asset/art/gif/c03_三楼/三楼窗户动画/4.png.import new file mode 100644 index 00000000..637462d4 --- /dev/null +++ b/asset/art/gif/c03_三楼/三楼窗户动画/4.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://buevhcobtv5ya" +path="res://.godot/imported/4.png-e4263b6ad463d2418924c365ab8cb20e.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://asset/art/gif/c03_三楼/三楼窗户动画/4.png" +dest_files=["res://.godot/imported/4.png-e4263b6ad463d2418924c365ab8cb20e.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/gif/c03_三楼/三楼窗户动画/5.png b/asset/art/gif/c03_三楼/三楼窗户动画/5.png new file mode 100644 index 00000000..5eaada04 Binary files /dev/null and b/asset/art/gif/c03_三楼/三楼窗户动画/5.png differ diff --git a/asset/art/gif/c03_三楼/三楼窗户动画/5.png.import b/asset/art/gif/c03_三楼/三楼窗户动画/5.png.import new file mode 100644 index 00000000..749ed5b8 --- /dev/null +++ b/asset/art/gif/c03_三楼/三楼窗户动画/5.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://bkrbcsbnxdy2r" +path="res://.godot/imported/5.png-a7ea88d1220c1dc32f8891344a156f8f.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://asset/art/gif/c03_三楼/三楼窗户动画/5.png" +dest_files=["res://.godot/imported/5.png-a7ea88d1220c1dc32f8891344a156f8f.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/gif/c03_三楼/三楼窗户动画/6.png b/asset/art/gif/c03_三楼/三楼窗户动画/6.png new file mode 100644 index 00000000..0155db9d Binary files /dev/null and b/asset/art/gif/c03_三楼/三楼窗户动画/6.png differ diff --git a/asset/art/gif/c03_三楼/三楼窗户动画/6.png.import b/asset/art/gif/c03_三楼/三楼窗户动画/6.png.import new file mode 100644 index 00000000..7ad7a77b --- /dev/null +++ b/asset/art/gif/c03_三楼/三楼窗户动画/6.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://bdp7rd8sn23jh" +path="res://.godot/imported/6.png-88612ef73f91204c92988a291c49f1fe.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://asset/art/gif/c03_三楼/三楼窗户动画/6.png" +dest_files=["res://.godot/imported/6.png-88612ef73f91204c92988a291c49f1fe.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/gif/c03_三楼/三楼窗户动画/7.png b/asset/art/gif/c03_三楼/三楼窗户动画/7.png new file mode 100644 index 00000000..6d49961a Binary files /dev/null and b/asset/art/gif/c03_三楼/三楼窗户动画/7.png differ diff --git a/asset/art/gif/c03_三楼/三楼窗户动画/7.png.import b/asset/art/gif/c03_三楼/三楼窗户动画/7.png.import new file mode 100644 index 00000000..07e61bef --- /dev/null +++ b/asset/art/gif/c03_三楼/三楼窗户动画/7.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://dptgag6ns51lj" +path="res://.godot/imported/7.png-2cb7e36faac5a875904c5287a9e2d667.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://asset/art/gif/c03_三楼/三楼窗户动画/7.png" +dest_files=["res://.godot/imported/7.png-2cb7e36faac5a875904c5287a9e2d667.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/gif/c03_三楼/三楼窗户动画/8.png b/asset/art/gif/c03_三楼/三楼窗户动画/8.png new file mode 100644 index 00000000..9681ab9e Binary files /dev/null and b/asset/art/gif/c03_三楼/三楼窗户动画/8.png differ diff --git a/asset/art/gif/c03_三楼/三楼窗户动画/8.png.import b/asset/art/gif/c03_三楼/三楼窗户动画/8.png.import new file mode 100644 index 00000000..2fc350fc --- /dev/null +++ b/asset/art/gif/c03_三楼/三楼窗户动画/8.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://cnvk3wsupxluq" +path="res://.godot/imported/8.png-11a4e36f4ba4dcec9b95643c661c8d2d.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://asset/art/gif/c03_三楼/三楼窗户动画/8.png" +dest_files=["res://.godot/imported/8.png-11a4e36f4ba4dcec9b95643c661c8d2d.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/gif/c03_三楼/三楼窗户动画/9.png b/asset/art/gif/c03_三楼/三楼窗户动画/9.png new file mode 100644 index 00000000..34592eda Binary files /dev/null and b/asset/art/gif/c03_三楼/三楼窗户动画/9.png differ diff --git a/asset/art/gif/c03_三楼/三楼窗户动画/9.png.import b/asset/art/gif/c03_三楼/三楼窗户动画/9.png.import new file mode 100644 index 00000000..be285c23 --- /dev/null +++ b/asset/art/gif/c03_三楼/三楼窗户动画/9.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://6cur72juq0ag" +path="res://.godot/imported/9.png-403ed15f30c461f8ea915063667e622c.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://asset/art/gif/c03_三楼/三楼窗户动画/9.png" +dest_files=["res://.godot/imported/9.png-403ed15f30c461f8ea915063667e622c.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/gif/c03_小小小蝶上楼道/c02_小小小蝶上楼道_frames.tres b/asset/art/gif/c03_小小小蝶上楼道/c02_小小小蝶上楼道_frames.tres deleted file mode 100644 index 75670c64..00000000 --- a/asset/art/gif/c03_小小小蝶上楼道/c02_小小小蝶上楼道_frames.tres +++ /dev/null @@ -1,85 +0,0 @@ -[gd_resource type="SpriteFrames" load_steps=16 format=3 uid="uid://by3207ou8ph7"] - -[ext_resource type="Texture2D" uid="uid://ctk8sh3rhvmi5" path="res://asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(上楼梯)/0.png" id="1_ctqo0"] -[ext_resource type="Texture2D" uid="uid://bwykxtvdujimd" path="res://asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(呼吸)/0.png" id="1_fcnvy"] -[ext_resource type="Texture2D" uid="uid://djwxl1tebi5x" path="res://asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(往前走)/0.png" id="1_o1csg"] -[ext_resource type="Texture2D" uid="uid://1uk6oj7c1pc0" path="res://asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(往前走)/1.png" id="2_brixb"] -[ext_resource type="Texture2D" uid="uid://ddf3kd4kukuga" path="res://asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(呼吸)/1.png" id="2_ctqo0"] -[ext_resource type="Texture2D" uid="uid://c35poyn3mxvtt" path="res://asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(上楼梯)/1.png" id="2_w48pf"] -[ext_resource type="Texture2D" uid="uid://cahlj0u5mot6v" path="res://asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(上楼梯)/2.png" id="3_cfyr2"] -[ext_resource type="Texture2D" uid="uid://qn51u1b00n2v" path="res://asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(呼吸)/2.png" id="3_w48pf"] -[ext_resource type="Texture2D" uid="uid://n30xu12f6pcw" path="res://asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(呼吸)/3.png" id="4_cfyr2"] -[ext_resource type="Texture2D" uid="uid://d2ecwhkld8u2d" path="res://asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(上楼梯)/3.png" id="4_j51jw"] -[ext_resource type="Texture2D" uid="uid://bf6wfuhcejrv1" path="res://asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(上楼梯)/4.png" id="5_w7h7c"] -[ext_resource type="Texture2D" uid="uid://bsclq0o3gtr3i" path="res://asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(跑)/0.png" id="10_l0u5u"] -[ext_resource type="Texture2D" uid="uid://c6rdik24wvgw5" path="res://asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(跑)/1.png" id="11_dy5ih"] -[ext_resource type="Texture2D" uid="uid://c5a5lj527f0kp" path="res://asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(跑)/2.png" id="12_33ryh"] -[ext_resource type="Texture2D" uid="uid://cwq8t3q80x0du" path="res://asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(跑)/3.png" id="13_86osl"] - -[resource] -animations = [{ -"frames": [{ -"duration": 6.0, -"texture": ExtResource("1_ctqo0") -}, { -"duration": 6.0, -"texture": ExtResource("2_w48pf") -}, { -"duration": 6.0, -"texture": ExtResource("3_cfyr2") -}, { -"duration": 6.0, -"texture": ExtResource("4_j51jw") -}, { -"duration": 6.0, -"texture": ExtResource("5_w7h7c") -}], -"loop": false, -"name": &"小小小蝶动画(上楼梯)", -"speed": 30.0 -}, { -"frames": [{ -"duration": 20.1, -"texture": ExtResource("1_fcnvy") -}, { -"duration": 20.1, -"texture": ExtResource("2_ctqo0") -}, { -"duration": 20.1, -"texture": ExtResource("3_w48pf") -}, { -"duration": 20.1, -"texture": ExtResource("4_cfyr2") -}], -"loop": true, -"name": &"小小小蝶动画(呼吸)", -"speed": 30.0 -}, { -"frames": [{ -"duration": 6.0, -"texture": ExtResource("1_o1csg") -}, { -"duration": 6.0, -"texture": ExtResource("2_brixb") -}], -"loop": true, -"name": &"小小小蝶动画(往前走)", -"speed": 30.0 -}, { -"frames": [{ -"duration": 9.9, -"texture": ExtResource("10_l0u5u") -}, { -"duration": 9.9, -"texture": ExtResource("11_dy5ih") -}, { -"duration": 9.9, -"texture": ExtResource("12_33ryh") -}, { -"duration": 9.9, -"texture": ExtResource("13_86osl") -}], -"loop": true, -"name": &"小小小蝶动画(跑)", -"speed": 30.0 -}] diff --git a/asset/art/gif/c03_小小小蝶上楼道/c03_小小小蝶上楼道_frames.tres b/asset/art/gif/c03_小小小蝶上楼道/c03_小小小蝶上楼道_frames.tres new file mode 100644 index 00000000..db093636 --- /dev/null +++ b/asset/art/gif/c03_小小小蝶上楼道/c03_小小小蝶上楼道_frames.tres @@ -0,0 +1,85 @@ +[gd_resource type="SpriteFrames" load_steps=16 format=3 uid="uid://c218xrr85jdc7"] + +[ext_resource type="Texture2D" uid="uid://bjwb6rk72hmtu" path="res://asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(往前走)/0.png" id="1_1yj0y"] +[ext_resource type="Texture2D" uid="uid://gaykdctnuduf" path="res://asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(呼吸)/0.png" id="1_5cr6n"] +[ext_resource type="Texture2D" uid="uid://djr8lkcp2l4tu" path="res://asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(上楼梯)/0.png" id="1_s2oio"] +[ext_resource type="Texture2D" uid="uid://bdo4lmuvt54hg" path="res://asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(往前走)/1.png" id="2_822rv"] +[ext_resource type="Texture2D" uid="uid://bhesoxpj573c4" path="res://asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(上楼梯)/1.png" id="2_ishlv"] +[ext_resource type="Texture2D" uid="uid://nj363mpsgxog" path="res://asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(呼吸)/1.png" id="2_s2oio"] +[ext_resource type="Texture2D" uid="uid://dtabi2q5ditbc" path="res://asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(上楼梯)/2.png" id="3_8s01c"] +[ext_resource type="Texture2D" uid="uid://bop42kxymgyln" path="res://asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(呼吸)/2.png" id="3_ishlv"] +[ext_resource type="Texture2D" uid="uid://cib8d20s4qufa" path="res://asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(呼吸)/3.png" id="4_8s01c"] +[ext_resource type="Texture2D" uid="uid://b45bu6n0wd0ka" path="res://asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(上楼梯)/3.png" id="4_t57xm"] +[ext_resource type="Texture2D" uid="uid://bw4rstnjgk1iv" path="res://asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(上楼梯)/4.png" id="5_jt3iw"] +[ext_resource type="Texture2D" uid="uid://caco171n5354h" path="res://asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(跑)/0.png" id="12_id3wp"] +[ext_resource type="Texture2D" uid="uid://crdlq30w7mj63" path="res://asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(跑)/1.png" id="13_hpyv1"] +[ext_resource type="Texture2D" uid="uid://dppqhi78a57es" path="res://asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(跑)/2.png" id="14_re1a4"] +[ext_resource type="Texture2D" uid="uid://bu056wsa2jjv" path="res://asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(跑)/3.png" id="15_vpvlk"] + +[resource] +animations = [{ +"frames": [{ +"duration": 6.0, +"texture": ExtResource("1_s2oio") +}, { +"duration": 6.0, +"texture": ExtResource("2_ishlv") +}, { +"duration": 6.0, +"texture": ExtResource("3_8s01c") +}, { +"duration": 6.0, +"texture": ExtResource("4_t57xm") +}, { +"duration": 6.0, +"texture": ExtResource("5_jt3iw") +}], +"loop": false, +"name": &"小小小蝶动画(上楼梯)", +"speed": 30.0 +}, { +"frames": [{ +"duration": 20.1, +"texture": ExtResource("1_5cr6n") +}, { +"duration": 20.1, +"texture": ExtResource("2_s2oio") +}, { +"duration": 20.1, +"texture": ExtResource("3_ishlv") +}, { +"duration": 20.1, +"texture": ExtResource("4_8s01c") +}], +"loop": true, +"name": &"小小小蝶动画(呼吸)", +"speed": 30.0 +}, { +"frames": [{ +"duration": 6.0, +"texture": ExtResource("1_1yj0y") +}, { +"duration": 6.0, +"texture": ExtResource("2_822rv") +}], +"loop": true, +"name": &"小小小蝶动画(往前走)", +"speed": 30.0 +}, { +"frames": [{ +"duration": 9.9, +"texture": ExtResource("12_id3wp") +}, { +"duration": 9.9, +"texture": ExtResource("13_hpyv1") +}, { +"duration": 9.9, +"texture": ExtResource("14_re1a4") +}, { +"duration": 9.9, +"texture": ExtResource("15_vpvlk") +}], +"loop": true, +"name": &"小小小蝶动画(跑)", +"speed": 30.0 +}] diff --git a/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(上楼梯).gif.import b/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(上楼梯).gif.import index fe0bb3aa..f095f5e7 100644 --- a/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(上楼梯).gif.import +++ b/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(上楼梯).gif.import @@ -2,7 +2,7 @@ importer="gif.animated.texture.plugin" type="SpriteFrames" -uid="uid://nqsdsjdsfdab" +uid="uid://5hep6a8gdkbo" path="res://.godot/imported/小小小蝶动画(上楼梯).gif-7c54830d3c0e0c66b29238348f4df7a1.tres" [deps] diff --git a/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(上楼梯)/0.png.import b/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(上楼梯)/0.png.import index f65d67cf..fa7f27ab 100644 --- a/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(上楼梯)/0.png.import +++ b/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(上楼梯)/0.png.import @@ -2,7 +2,7 @@ importer="texture" type="CompressedTexture2D" -uid="uid://ctk8sh3rhvmi5" +uid="uid://djr8lkcp2l4tu" path="res://.godot/imported/0.png-78a8d4d71fbf5571b704b881066a9461.ctex" metadata={ "vram_texture": false diff --git a/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(上楼梯)/1.png.import b/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(上楼梯)/1.png.import index 3b023e57..6cd512f9 100644 --- a/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(上楼梯)/1.png.import +++ b/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(上楼梯)/1.png.import @@ -2,7 +2,7 @@ importer="texture" type="CompressedTexture2D" -uid="uid://c35poyn3mxvtt" +uid="uid://bhesoxpj573c4" path="res://.godot/imported/1.png-5dea8510fa6a5d57e027d80c256a265d.ctex" metadata={ "vram_texture": false diff --git a/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(上楼梯)/2.png.import b/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(上楼梯)/2.png.import index 3d4efb81..141719e2 100644 --- a/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(上楼梯)/2.png.import +++ b/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(上楼梯)/2.png.import @@ -2,7 +2,7 @@ importer="texture" type="CompressedTexture2D" -uid="uid://cahlj0u5mot6v" +uid="uid://dtabi2q5ditbc" path="res://.godot/imported/2.png-a6dbc1682dc09a621e7b6502e7ede6b7.ctex" metadata={ "vram_texture": false diff --git a/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(上楼梯)/3.png.import b/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(上楼梯)/3.png.import index bf7406d7..839d9a11 100644 --- a/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(上楼梯)/3.png.import +++ b/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(上楼梯)/3.png.import @@ -2,7 +2,7 @@ importer="texture" type="CompressedTexture2D" -uid="uid://d2ecwhkld8u2d" +uid="uid://b45bu6n0wd0ka" path="res://.godot/imported/3.png-ba593b00fc362c726db2074dc8480b8e.ctex" metadata={ "vram_texture": false diff --git a/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(上楼梯)/4.png.import b/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(上楼梯)/4.png.import index a94bdc0d..30134e01 100644 --- a/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(上楼梯)/4.png.import +++ b/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(上楼梯)/4.png.import @@ -2,7 +2,7 @@ importer="texture" type="CompressedTexture2D" -uid="uid://bf6wfuhcejrv1" +uid="uid://bw4rstnjgk1iv" path="res://.godot/imported/4.png-924871c7e42a548c3c255e57ec9793e3.ctex" metadata={ "vram_texture": false diff --git a/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(呼吸).gif.import b/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(呼吸).gif.import index 6ee2104f..bd06d14b 100644 --- a/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(呼吸).gif.import +++ b/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(呼吸).gif.import @@ -2,7 +2,7 @@ importer="gif.animated.texture.plugin" type="SpriteFrames" -uid="uid://c8pjtla0qebwg" +uid="uid://d0qjnrslvybpx" path="res://.godot/imported/小小小蝶动画(呼吸).gif-91af45452014e2c866580755b40c9d46.tres" [deps] diff --git a/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(呼吸)/0.png.import b/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(呼吸)/0.png.import index 72365f76..c8c679f1 100644 --- a/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(呼吸)/0.png.import +++ b/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(呼吸)/0.png.import @@ -2,7 +2,7 @@ importer="texture" type="CompressedTexture2D" -uid="uid://bwykxtvdujimd" +uid="uid://gaykdctnuduf" path="res://.godot/imported/0.png-ce4f73e5fc3d7138c070a7fd3fdc58dd.ctex" metadata={ "vram_texture": false diff --git a/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(呼吸)/1.png.import b/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(呼吸)/1.png.import index e12cae75..90430eca 100644 --- a/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(呼吸)/1.png.import +++ b/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(呼吸)/1.png.import @@ -2,7 +2,7 @@ importer="texture" type="CompressedTexture2D" -uid="uid://ddf3kd4kukuga" +uid="uid://nj363mpsgxog" path="res://.godot/imported/1.png-922973505b3ee75b3c06a2737ab742b6.ctex" metadata={ "vram_texture": false diff --git a/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(呼吸)/2.png.import b/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(呼吸)/2.png.import index 17a4a6ba..c32cbe97 100644 --- a/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(呼吸)/2.png.import +++ b/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(呼吸)/2.png.import @@ -2,7 +2,7 @@ importer="texture" type="CompressedTexture2D" -uid="uid://qn51u1b00n2v" +uid="uid://bop42kxymgyln" path="res://.godot/imported/2.png-77da9ed3eee1ae3b92eafe91b404bdab.ctex" metadata={ "vram_texture": false diff --git a/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(呼吸)/3.png.import b/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(呼吸)/3.png.import index 86b7d5a1..230e7447 100644 --- a/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(呼吸)/3.png.import +++ b/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(呼吸)/3.png.import @@ -2,7 +2,7 @@ importer="texture" type="CompressedTexture2D" -uid="uid://n30xu12f6pcw" +uid="uid://cib8d20s4qufa" path="res://.godot/imported/3.png-78b50785190630462b5c83bcee1ebf43.ctex" metadata={ "vram_texture": false diff --git a/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(往前走).gif.import b/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(往前走).gif.import index 150762be..397fa071 100644 --- a/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(往前走).gif.import +++ b/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(往前走).gif.import @@ -2,7 +2,7 @@ importer="gif.animated.texture.plugin" type="SpriteFrames" -uid="uid://b3y8bhdt3flfb" +uid="uid://c67uyeedm4eie" path="res://.godot/imported/小小小蝶动画(往前走).gif-52f373bd454008ca93aeabe897321504.tres" [deps] diff --git a/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(往前走)/0.png.import b/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(往前走)/0.png.import index 713c4064..13310afb 100644 --- a/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(往前走)/0.png.import +++ b/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(往前走)/0.png.import @@ -2,7 +2,7 @@ importer="texture" type="CompressedTexture2D" -uid="uid://djwxl1tebi5x" +uid="uid://bjwb6rk72hmtu" path="res://.godot/imported/0.png-724d8608d9000f7b9f0048d54eab217a.ctex" metadata={ "vram_texture": false diff --git a/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(往前走)/1.png.import b/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(往前走)/1.png.import index 3d04989e..7e590eba 100644 --- a/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(往前走)/1.png.import +++ b/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(往前走)/1.png.import @@ -2,7 +2,7 @@ importer="texture" type="CompressedTexture2D" -uid="uid://1uk6oj7c1pc0" +uid="uid://bdo4lmuvt54hg" path="res://.godot/imported/1.png-dfbf3a73dd48e58138834c0bd419a378.ctex" metadata={ "vram_texture": false diff --git a/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(跑).gif b/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(跑).gif index c470e0fe..8fbf4010 100644 Binary files a/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(跑).gif and b/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(跑).gif differ diff --git a/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(跑).gif.import b/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(跑).gif.import index 77c2ccf2..33db35b0 100644 --- a/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(跑).gif.import +++ b/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(跑).gif.import @@ -2,7 +2,7 @@ importer="gif.animated.texture.plugin" type="SpriteFrames" -uid="uid://kqlt5uewnedw" +uid="uid://ba730fsv024su" path="res://.godot/imported/小小小蝶动画(跑).gif-1dd387a332e9d39dc933f234758b5e53.tres" [deps] diff --git a/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(跑)/0.png b/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(跑)/0.png index 933f31a2..38c9ef0c 100644 Binary files a/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(跑)/0.png and b/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(跑)/0.png differ diff --git a/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(跑)/0.png.import b/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(跑)/0.png.import index dfbf4985..a6f095fd 100644 --- a/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(跑)/0.png.import +++ b/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(跑)/0.png.import @@ -2,7 +2,7 @@ importer="texture" type="CompressedTexture2D" -uid="uid://bsclq0o3gtr3i" +uid="uid://caco171n5354h" path="res://.godot/imported/0.png-60280c8fd45952e7df9b96e291860ffe.ctex" metadata={ "vram_texture": false diff --git a/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(跑)/1.png b/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(跑)/1.png index 43412e14..284f8296 100644 Binary files a/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(跑)/1.png and b/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(跑)/1.png differ diff --git a/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(跑)/1.png.import b/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(跑)/1.png.import index 9c557904..7e310374 100644 --- a/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(跑)/1.png.import +++ b/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(跑)/1.png.import @@ -2,7 +2,7 @@ importer="texture" type="CompressedTexture2D" -uid="uid://c6rdik24wvgw5" +uid="uid://crdlq30w7mj63" path="res://.godot/imported/1.png-d01feb083416d9768ff23ec7d63ba562.ctex" metadata={ "vram_texture": false diff --git a/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(跑)/2.png b/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(跑)/2.png index 37d01a53..96cf1589 100644 Binary files a/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(跑)/2.png and b/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(跑)/2.png differ diff --git a/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(跑)/2.png.import b/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(跑)/2.png.import index dab3f104..fe0e8ccf 100644 --- a/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(跑)/2.png.import +++ b/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(跑)/2.png.import @@ -2,7 +2,7 @@ importer="texture" type="CompressedTexture2D" -uid="uid://c5a5lj527f0kp" +uid="uid://dppqhi78a57es" path="res://.godot/imported/2.png-b6372c9fb49112edff670bf4484c2373.ctex" metadata={ "vram_texture": false diff --git a/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(跑)/3.png b/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(跑)/3.png index 92e77b93..8bea06f6 100644 Binary files a/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(跑)/3.png and b/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(跑)/3.png differ diff --git a/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(跑)/3.png.import b/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(跑)/3.png.import index c2354921..12e8773b 100644 --- a/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(跑)/3.png.import +++ b/asset/art/gif/c03_小小小蝶上楼道/小小小蝶动画(跑)/3.png.import @@ -2,7 +2,7 @@ importer="texture" type="CompressedTexture2D" -uid="uid://cwq8t3q80x0du" +uid="uid://bu056wsa2jjv" path="res://.godot/imported/3.png-8ffb7363131c44fd5f1a8e2d740ec584.ctex" metadata={ "vram_texture": false diff --git a/asset/art/scene/c01/s02_旧版序章/f_序章标题.png b/asset/art/scene/c01/s02_旧版序章/f_序章标题.png deleted file mode 100755 index 81e32e24..00000000 Binary files a/asset/art/scene/c01/s02_旧版序章/f_序章标题.png and /dev/null differ diff --git a/asset/art/gif/c02_空房间/e_小蝉头套.png b/asset/art/scene/c02/s10_空房间/e_小蝉头套.png similarity index 100% rename from asset/art/gif/c02_空房间/e_小蝉头套.png rename to asset/art/scene/c02/s10_空房间/e_小蝉头套.png diff --git a/asset/art/gif/c02_空房间/e_小蝉头套.png.import b/asset/art/scene/c02/s10_空房间/e_小蝉头套.png.import similarity index 68% rename from asset/art/gif/c02_空房间/e_小蝉头套.png.import rename to asset/art/scene/c02/s10_空房间/e_小蝉头套.png.import index bf3fe973..f61bc1a9 100644 --- a/asset/art/gif/c02_空房间/e_小蝉头套.png.import +++ b/asset/art/scene/c02/s10_空房间/e_小蝉头套.png.import @@ -3,15 +3,15 @@ importer="texture" type="CompressedTexture2D" uid="uid://o5uouajglukh" -path="res://.godot/imported/e_小蝉头套.png-501b12996fd43e963ac65bc84fe4c4e2.ctex" +path="res://.godot/imported/e_小蝉头套.png-ea99dce944a5765b69439bed52c2f9f4.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://asset/art/gif/c02_空房间/e_小蝉头套.png" -dest_files=["res://.godot/imported/e_小蝉头套.png-501b12996fd43e963ac65bc84fe4c4e2.ctex"] +source_file="res://asset/art/scene/c02/s10_空房间/e_小蝉头套.png" +dest_files=["res://.godot/imported/e_小蝉头套.png-ea99dce944a5765b69439bed52c2f9f4.ctex"] [params] diff --git a/asset/art/scene/c02/s10_空房间/ux_小蝉头套特写.png b/asset/art/scene/c02/s10_空房间/ux_小蝉头套特写.png new file mode 100644 index 00000000..b6f67b94 Binary files /dev/null and b/asset/art/scene/c02/s10_空房间/ux_小蝉头套特写.png differ diff --git a/asset/art/gif/c02_空房间/ux_小蝉头套特写.png.import b/asset/art/scene/c02/s10_空房间/ux_小蝉头套特写.png.import similarity index 67% rename from asset/art/gif/c02_空房间/ux_小蝉头套特写.png.import rename to asset/art/scene/c02/s10_空房间/ux_小蝉头套特写.png.import index 21657d55..53962e93 100644 --- a/asset/art/gif/c02_空房间/ux_小蝉头套特写.png.import +++ b/asset/art/scene/c02/s10_空房间/ux_小蝉头套特写.png.import @@ -3,15 +3,15 @@ importer="texture" type="CompressedTexture2D" uid="uid://b0arnhnvdn0ew" -path="res://.godot/imported/ux_小蝉头套特写.png-0f19dde023c331772c53a4c886853ec4.ctex" +path="res://.godot/imported/ux_小蝉头套特写.png-8b449bdb257ff56259e1eb4834ace6bc.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://asset/art/gif/c02_空房间/ux_小蝉头套特写.png" -dest_files=["res://.godot/imported/ux_小蝉头套特写.png-0f19dde023c331772c53a4c886853ec4.ctex"] +source_file="res://asset/art/scene/c02/s10_空房间/ux_小蝉头套特写.png" +dest_files=["res://.godot/imported/ux_小蝉头套特写.png-8b449bdb257ff56259e1eb4834ace6bc.ctex"] [params] diff --git a/asset/art/gif/c02_空房间/人偶.png b/asset/art/scene/c02/s10_空房间/人偶.png similarity index 100% rename from asset/art/gif/c02_空房间/人偶.png rename to asset/art/scene/c02/s10_空房间/人偶.png diff --git a/asset/art/gif/c02_空房间/人偶.png.import b/asset/art/scene/c02/s10_空房间/人偶.png.import similarity index 70% rename from asset/art/gif/c02_空房间/人偶.png.import rename to asset/art/scene/c02/s10_空房间/人偶.png.import index d99b351f..e189e380 100644 --- a/asset/art/gif/c02_空房间/人偶.png.import +++ b/asset/art/scene/c02/s10_空房间/人偶.png.import @@ -3,15 +3,15 @@ importer="texture" type="CompressedTexture2D" uid="uid://88l4i6ywvjqm" -path="res://.godot/imported/人偶.png-f4dfc90993e694feddc1ec221f95be0b.ctex" +path="res://.godot/imported/人偶.png-ff3d7fb8dc118510c3cbbe0b241eb5a4.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://asset/art/gif/c02_空房间/人偶.png" -dest_files=["res://.godot/imported/人偶.png-f4dfc90993e694feddc1ec221f95be0b.ctex"] +source_file="res://asset/art/scene/c02/s10_空房间/人偶.png" +dest_files=["res://.godot/imported/人偶.png-ff3d7fb8dc118510c3cbbe0b241eb5a4.ctex"] [params] diff --git a/asset/art/gif/c02_空房间/全身.png b/asset/art/scene/c02/s10_空房间/全身.png similarity index 100% rename from asset/art/gif/c02_空房间/全身.png rename to asset/art/scene/c02/s10_空房间/全身.png diff --git a/asset/art/gif/c02_空房间/全身.png.import b/asset/art/scene/c02/s10_空房间/全身.png.import similarity index 70% rename from asset/art/gif/c02_空房间/全身.png.import rename to asset/art/scene/c02/s10_空房间/全身.png.import index 29aad10a..8bdfd3df 100644 --- a/asset/art/gif/c02_空房间/全身.png.import +++ b/asset/art/scene/c02/s10_空房间/全身.png.import @@ -3,15 +3,15 @@ importer="texture" type="CompressedTexture2D" uid="uid://cpj7goyf6nqiw" -path="res://.godot/imported/全身.png-9be7e1586ed418f01e5c654d32e9d920.ctex" +path="res://.godot/imported/全身.png-da5955e334b019a4ae1e3b5978db6946.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://asset/art/gif/c02_空房间/全身.png" -dest_files=["res://.godot/imported/全身.png-9be7e1586ed418f01e5c654d32e9d920.ctex"] +source_file="res://asset/art/scene/c02/s10_空房间/全身.png" +dest_files=["res://.godot/imported/全身.png-da5955e334b019a4ae1e3b5978db6946.ctex"] [params] diff --git a/asset/art/scene/c03/s01_三楼/bg_三楼走廊.png b/asset/art/scene/c03/s01_三楼/bg_三楼走廊.png new file mode 100644 index 00000000..cfd82f35 Binary files /dev/null and b/asset/art/scene/c03/s01_三楼/bg_三楼走廊.png differ diff --git a/asset/art/scene/c03/s01_三楼/bg_三楼走廊.png.import b/asset/art/scene/c03/s01_三楼/bg_三楼走廊.png.import new file mode 100644 index 00000000..33b69e8e --- /dev/null +++ b/asset/art/scene/c03/s01_三楼/bg_三楼走廊.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://cpjd3dqri51fq" +path="res://.godot/imported/bg_三楼走廊.png-d91aa66d3616ed8ddffcfd778f57922d.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://asset/art/scene/c03/s01_三楼/bg_三楼走廊.png" +dest_files=["res://.godot/imported/bg_三楼走廊.png-d91aa66d3616ed8ddffcfd778f57922d.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/scene/c03/s01_三楼/e_治病木牌.png b/asset/art/scene/c03/s01_三楼/e_治病木牌.png new file mode 100644 index 00000000..9e14ed10 Binary files /dev/null and b/asset/art/scene/c03/s01_三楼/e_治病木牌.png differ diff --git a/asset/art/scene/c03/s01_三楼/e_治病木牌.png.import b/asset/art/scene/c03/s01_三楼/e_治病木牌.png.import new file mode 100644 index 00000000..87322a8c --- /dev/null +++ b/asset/art/scene/c03/s01_三楼/e_治病木牌.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://dagy852q0fduh" +path="res://.godot/imported/e_治病木牌.png-18fb72ff92acf1bc109e9293ec34e1f5.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://asset/art/scene/c03/s01_三楼/e_治病木牌.png" +dest_files=["res://.godot/imported/e_治病木牌.png-18fb72ff92acf1bc109e9293ec34e1f5.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/scene/c03/s01_三楼/fg_前景.png b/asset/art/scene/c03/s01_三楼/fg_前景.png new file mode 100644 index 00000000..cfbf9269 Binary files /dev/null and b/asset/art/scene/c03/s01_三楼/fg_前景.png differ diff --git a/asset/art/scene/c03/s01_三楼/fg_前景.png.import b/asset/art/scene/c03/s01_三楼/fg_前景.png.import new file mode 100644 index 00000000..c6876163 --- /dev/null +++ b/asset/art/scene/c03/s01_三楼/fg_前景.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://djoft6600kly6" +path="res://.godot/imported/fg_前景.png-b011f420a650cfc1843989c608d5b33c.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://asset/art/scene/c03/s01_三楼/fg_前景.png" +dest_files=["res://.godot/imported/fg_前景.png-b011f420a650cfc1843989c608d5b33c.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/scene/c03/s03_瞎子理发店/理发店前景.png b/asset/art/scene/c03/s03_瞎子理发店/理发店前景.png new file mode 100644 index 00000000..22e7c12c Binary files /dev/null and b/asset/art/scene/c03/s03_瞎子理发店/理发店前景.png differ diff --git a/asset/art/scene/c03/s03_瞎子理发店/理发店前景.png.import b/asset/art/scene/c03/s03_瞎子理发店/理发店前景.png.import new file mode 100644 index 00000000..158fcd3b --- /dev/null +++ b/asset/art/scene/c03/s03_瞎子理发店/理发店前景.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://b45bpylquulrt" +path="res://.godot/imported/理发店前景.png-77d90d6f4031d5275b798cf1684586d8.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://asset/art/scene/c03/s03_瞎子理发店/理发店前景.png" +dest_files=["res://.godot/imported/理发店前景.png-77d90d6f4031d5275b798cf1684586d8.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/scene/c03/s03_瞎子理发店/理发店剪贴画报.png b/asset/art/scene/c03/s03_瞎子理发店/理发店剪贴画报.png new file mode 100644 index 00000000..1099be69 Binary files /dev/null and b/asset/art/scene/c03/s03_瞎子理发店/理发店剪贴画报.png differ diff --git a/asset/art/scene/c03/s03_瞎子理发店/理发店剪贴画报.png.import b/asset/art/scene/c03/s03_瞎子理发店/理发店剪贴画报.png.import new file mode 100644 index 00000000..138a5201 --- /dev/null +++ b/asset/art/scene/c03/s03_瞎子理发店/理发店剪贴画报.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://0p78wjtm30rm" +path="res://.godot/imported/理发店剪贴画报.png-f1c9f5ebcf15538ef9c9a5303e912cad.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://asset/art/scene/c03/s03_瞎子理发店/理发店剪贴画报.png" +dest_files=["res://.godot/imported/理发店剪贴画报.png-f1c9f5ebcf15538ef9c9a5303e912cad.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/scene/c03/s03_瞎子理发店/癞子纸人.png b/asset/art/scene/c03/s03_瞎子理发店/癞子纸人.png new file mode 100644 index 00000000..a3329096 Binary files /dev/null and b/asset/art/scene/c03/s03_瞎子理发店/癞子纸人.png differ diff --git a/asset/art/scene/c03/s03_瞎子理发店/癞子纸人.png.import b/asset/art/scene/c03/s03_瞎子理发店/癞子纸人.png.import new file mode 100644 index 00000000..97e9535a --- /dev/null +++ b/asset/art/scene/c03/s03_瞎子理发店/癞子纸人.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://bv5vcrdqwtlm3" +path="res://.godot/imported/癞子纸人.png-17dc3e4adfce7f29a4ef01e3b4300862.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://asset/art/scene/c03/s03_瞎子理发店/癞子纸人.png" +dest_files=["res://.godot/imported/癞子纸人.png-17dc3e4adfce7f29a4ef01e3b4300862.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/scene/c03/s03_瞎子理发店/癞子纸人头套.png b/asset/art/scene/c03/s03_瞎子理发店/癞子纸人头套.png new file mode 100644 index 00000000..b23902c2 Binary files /dev/null and b/asset/art/scene/c03/s03_瞎子理发店/癞子纸人头套.png differ diff --git a/asset/art/scene/c03/s03_瞎子理发店/癞子纸人头套.png.import b/asset/art/scene/c03/s03_瞎子理发店/癞子纸人头套.png.import new file mode 100644 index 00000000..7b860c61 --- /dev/null +++ b/asset/art/scene/c03/s03_瞎子理发店/癞子纸人头套.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://ckboywu6sjcpc" +path="res://.godot/imported/癞子纸人头套.png-c1bab6941acc0a7d734481c5540b5fdd.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://asset/art/scene/c03/s03_瞎子理发店/癞子纸人头套.png" +dest_files=["res://.godot/imported/癞子纸人头套.png-c1bab6941acc0a7d734481c5540b5fdd.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/scene/c03/s03_瞎子理发店/癞子纸人纸钱.png b/asset/art/scene/c03/s03_瞎子理发店/癞子纸人纸钱.png new file mode 100644 index 00000000..e0d4c05d Binary files /dev/null and b/asset/art/scene/c03/s03_瞎子理发店/癞子纸人纸钱.png differ diff --git a/asset/art/scene/c03/s03_瞎子理发店/癞子纸人纸钱.png.import b/asset/art/scene/c03/s03_瞎子理发店/癞子纸人纸钱.png.import new file mode 100644 index 00000000..f5768e5d --- /dev/null +++ b/asset/art/scene/c03/s03_瞎子理发店/癞子纸人纸钱.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://c5qlahkemlsnt" +path="res://.godot/imported/癞子纸人纸钱.png-9110c19d0795253447aa88cf755f1174.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://asset/art/scene/c03/s03_瞎子理发店/癞子纸人纸钱.png" +dest_files=["res://.godot/imported/癞子纸人纸钱.png-9110c19d0795253447aa88cf755f1174.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/scene/c03/s03_瞎子理发店/瞎子理发店.png b/asset/art/scene/c03/s03_瞎子理发店/瞎子理发店.png new file mode 100644 index 00000000..90fc01ef Binary files /dev/null and b/asset/art/scene/c03/s03_瞎子理发店/瞎子理发店.png differ diff --git a/asset/art/scene/c03/s03_瞎子理发店/瞎子理发店.png.import b/asset/art/scene/c03/s03_瞎子理发店/瞎子理发店.png.import new file mode 100644 index 00000000..68a1ad35 --- /dev/null +++ b/asset/art/scene/c03/s03_瞎子理发店/瞎子理发店.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://cjgkit00lt3tr" +path="res://.godot/imported/瞎子理发店.png-dc9ffb92eb739d530a86cc41684351e3.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://asset/art/scene/c03/s03_瞎子理发店/瞎子理发店.png" +dest_files=["res://.godot/imported/瞎子理发店.png-dc9ffb92eb739d530a86cc41684351e3.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/scene/c03/s03_瞎子理发店/纸人-蓝.png b/asset/art/scene/c03/s03_瞎子理发店/纸人-蓝.png new file mode 100644 index 00000000..418c5d1b Binary files /dev/null and b/asset/art/scene/c03/s03_瞎子理发店/纸人-蓝.png differ diff --git a/asset/art/scene/c03/s03_瞎子理发店/纸人-蓝.png.import b/asset/art/scene/c03/s03_瞎子理发店/纸人-蓝.png.import new file mode 100644 index 00000000..cd2f10d5 --- /dev/null +++ b/asset/art/scene/c03/s03_瞎子理发店/纸人-蓝.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://bwe6onvjp8lmo" +path="res://.godot/imported/纸人-蓝.png-ce43c595f35b7c5b00e2a5d326dec5a1.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://asset/art/scene/c03/s03_瞎子理发店/纸人-蓝.png" +dest_files=["res://.godot/imported/纸人-蓝.png-ce43c595f35b7c5b00e2a5d326dec5a1.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/scene/demo额外/demo感谢告示.png b/asset/art/scene/demo额外/demo感谢告示.png new file mode 100644 index 00000000..bb82fb34 Binary files /dev/null and b/asset/art/scene/demo额外/demo感谢告示.png differ diff --git a/asset/art/scene/demo额外/demo感谢告示.png.import b/asset/art/scene/demo额外/demo感谢告示.png.import new file mode 100644 index 00000000..914ac9c0 --- /dev/null +++ b/asset/art/scene/demo额外/demo感谢告示.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://0quk16rj31cm" +path="res://.godot/imported/demo感谢告示.png-06729018a222a69c8997cb68bd5e8173.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://asset/art/scene/demo额外/demo感谢告示.png" +dest_files=["res://.godot/imported/demo感谢告示.png-06729018a222a69c8997cb68bd5e8173.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/scene/demo额外/demo感谢告示(场景).png b/asset/art/scene/demo额外/demo感谢告示(场景).png new file mode 100644 index 00000000..496d2968 Binary files /dev/null and b/asset/art/scene/demo额外/demo感谢告示(场景).png differ diff --git a/asset/art/scene/demo额外/demo感谢告示(场景).png.import b/asset/art/scene/demo额外/demo感谢告示(场景).png.import new file mode 100644 index 00000000..0ab2022e --- /dev/null +++ b/asset/art/scene/demo额外/demo感谢告示(场景).png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://brsrkwf0k0bpn" +path="res://.godot/imported/demo感谢告示(场景).png-705d27d1d23e9d8a8240a47d66131987.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://asset/art/scene/demo额外/demo感谢告示(场景).png" +dest_files=["res://.godot/imported/demo感谢告示(场景).png-705d27d1d23e9d8a8240a47d66131987.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/ui/标题字/标题字-12.png b/asset/art/ui/标题字/标题字-12.png index f235926a..8e3be798 100644 Binary files a/asset/art/ui/标题字/标题字-12.png and b/asset/art/ui/标题字/标题字-12.png differ diff --git a/asset/dialogue/item_description.csv b/asset/dialogue/item_description.csv index 040506ef..39c1c59b 100644 --- a/asset/dialogue/item_description.csv +++ b/asset/dialogue/item_description.csv @@ -193,3 +193,5 @@ c02_小蝉恨他们,我恨他们!,,,,, c02_火灾等待准备,还没准备好点火呢,,,,, c02_霸凌救小蝉开始,啊!我得想办法帮帮她...,,,,, c02_点火前阻止右移,没时间浪费了!想想办法救出小蝉...,,,,, +c02_看到小蝉上楼,?!,,,,, +c02_看到杂物堆消失,楼梯口的杂物消失了...,,,,, diff --git a/asset/dialogue/item_description.dialogue b/asset/dialogue/item_description.dialogue index 4c367f3e..46e3b1e3 100644 --- a/asset/dialogue/item_description.dialogue +++ b/asset/dialogue/item_description.dialogue @@ -257,6 +257,9 @@ 还没准备好点火呢 [ID:c02_火灾等待准备] 啊!我得想办法帮帮她... [ID:c02_霸凌救小蝉开始] 没时间浪费了!想想办法救出小蝉... [ID:c02_点火前阻止右移] +# 结尾 +?! [ID:c02_看到小蝉上楼] +楼梯口的杂物消失了... [ID:c02_看到杂物堆消失] => END ~ Notes_c03 diff --git a/config/art/static_frames_loader.gd b/config/art/static_frames_loader.gd index 366c54ea..45b6d078 100644 --- a/config/art/static_frames_loader.gd +++ b/config/art/static_frames_loader.gd @@ -1,7 +1,7 @@ extends Control @export var path = "res://asset/art/scene/" -@export var static_frames = preload("res://config/art/static_sprite_frames.tres") +@export var static_frames = preload("uid://ccrfw5wsbxvq4") @onready var load_btn = %LoadButton as Button diff --git a/config/art/static_sprite_frames.tres b/config/art/static_sprite_frames.tres index cc8ec9b2..870f4a8e 100644 --- a/config/art/static_sprite_frames.tres +++ b/config/art/static_sprite_frames.tres @@ -1,1234 +1,3 @@ -[gd_resource type="SpriteFrames" load_steps=137 format=3 uid="uid://dercgk2rdfig"] - -[ext_resource type="Texture2D" uid="uid://jnnm4gb8tsp5" path="res://asset/art/scene/c01/s01_旧版序章/bg_夜晚有墙.png" id="1_k3ot7"] -[ext_resource type="Texture2D" uid="uid://dxcn4gha8l5ce" path="res://asset/art/scene/c01/s01_旧版序章/e_老奶奶喂老鼠.png" id="2_eg3uh"] -[ext_resource type="Texture2D" uid="uid://dcnbfdgbsyeey" path="res://asset/art/scene/c01/s02_旧版序章/f_序章标题.png" id="3_s15vv"] -[ext_resource type="Texture2D" uid="uid://wp02vcountgo" path="res://asset/art/scene/c01/s02_旧版序章/ux_老鼠吃肉_吃完.png" id="4_mo80j"] -[ext_resource type="Texture2D" uid="uid://dnl1vseew5gu" path="res://asset/art/scene/c01/s02_旧版序章/ux_老鼠吃肉_无光黑.png" id="5_npyjw"] -[ext_resource type="Texture2D" uid="uid://dxynw7qk1ax8w" path="res://asset/art/scene/c01/s02_旧版序章/ux_老鼠吃肉_有光晕黑.png" id="6_mdnkw"] -[ext_resource type="Texture2D" uid="uid://br4euku1knv3k" path="res://asset/art/scene/c01/s03_旧版序章/bg_夜晚门关着 有红色印记.png" id="7_6lbmm"] -[ext_resource type="Texture2D" uid="uid://bvxa5gejmlk4o" path="res://asset/art/scene/c01/s03_旧版序章/e_柱子有红纹gaise.png" id="8_wqh8b"] -[ext_resource type="Texture2D" uid="uid://dsyb81xacsbc8" path="res://asset/art/scene/c01/s03_旧版序章/ux_背景gaise.png" id="9_sf8ni"] -[ext_resource type="Texture2D" uid="uid://bqawq75la061h" path="res://asset/art/scene/c01/s03_旧版序章/ux_鬼差脸gaise.png" id="10_vf3m0"] -[ext_resource type="Texture2D" uid="uid://xiul48vc10fx" path="res://asset/art/scene/c01/s04_旧版序章/bg_底图带楼.png" id="11_1ntts"] -[ext_resource type="Texture2D" uid="uid://dgvu4jvbimpvs" path="res://asset/art/scene/c01/s04_旧版序章/e_树.png" id="12_tccdj"] -[ext_resource type="Texture2D" uid="uid://dc07t8oud2dhv" path="res://asset/art/scene/c01/s04_旧版序章/e_轿车.png" id="13_1plt5"] -[ext_resource type="Texture2D" uid="uid://b0f00retoqxyc" path="res://asset/art/scene/c01/s04_旧版序章/f_动画字幕1.png" id="14_vao82"] -[ext_resource type="Texture2D" uid="uid://oq5ci80mkhih" path="res://asset/art/scene/c01/s04_旧版序章/f_动画字幕2.png" id="15_bqgqw"] -[ext_resource type="Texture2D" uid="uid://dcjx3dqetfeqq" path="res://asset/art/scene/c01/s04_旧版序章/f_动画字幕3.png" id="16_o1kwd"] -[ext_resource type="Texture2D" uid="uid://bppjrbdqm37k3" path="res://asset/art/scene/c01/s04_旧版序章/f_第一章标题.png" id="17_0dtov"] -[ext_resource type="Texture2D" uid="uid://cjllurf1ouxf" path="res://asset/art/scene/c01/s04_旧版序章/fg_前景1.png" id="18_n1rqy"] -[ext_resource type="Texture2D" uid="uid://c2rex8f1hh5xf" path="res://asset/art/scene/c01/s04_旧版序章/fg_前景2.png" id="19_1jd4o"] -[ext_resource type="Texture2D" uid="uid://qbwh5si2owve" path="res://asset/art/scene/c01/s04_旧版序章/fg_前景3.png" id="20_bpq55"] -[ext_resource type="Texture2D" uid="uid://dibfvlmarlkg6" path="res://asset/art/scene/c02/旧版/s01_街道/bg_公寓入口.png" id="21_yvd7t"] -[ext_resource type="Texture2D" uid="uid://bekfwxg2gt53r" path="res://asset/art/scene/c02/旧版/s01_街道/e_入口寻人启事.png" id="22_h14fi"] -[ext_resource type="Texture2D" uid="uid://btm2xn1en8xsi" path="res://asset/art/scene/c02/旧版/s01_街道/ux_院长的信1.png" id="23_71xtk"] -[ext_resource type="Texture2D" uid="uid://cjit7q6hb3btm" path="res://asset/art/scene/c02/旧版/s01_街道/ux_院长的信2.png" id="24_m3qy2"] -[ext_resource type="Texture2D" uid="uid://tqkhrogci71d" path="res://asset/art/scene/c02/旧版/s02_走道/bg_过道.png" id="25_22xvr"] -[ext_resource type="Texture2D" uid="uid://cn47etn7gpoi6" path="res://asset/art/scene/c02/旧版/s02_走道/e_八音盒组.png" id="26_r72rq"] -[ext_resource type="Texture2D" uid="uid://5pl1b7cor715" path="res://asset/art/scene/c02/旧版/s02_走道/e_纸人.png" id="27_imyyr"] -[ext_resource type="Texture2D" uid="uid://cjv12skh6ffh5" path="res://asset/art/scene/c02/旧版/s02_走道/ux_纸条包.png" id="28_pngit"] -[ext_resource type="Texture2D" uid="uid://culkitwumwgve" path="res://asset/art/scene/c02/旧版/s02_走道/ux_纸条包钥匙.png" id="29_3x2qb"] -[ext_resource type="Texture2D" uid="uid://cxxb7o0ai5kwj" path="res://asset/art/scene/c02/旧版/s02_走道/ux_纸条展开.png" id="30_8d7d2"] -[ext_resource type="Texture2D" uid="uid://6ek1bmnvnlrj" path="res://asset/art/scene/c02/旧版/s02_走道/ux_进门鼠疫海报wz.png" id="31_5f2ix"] -[ext_resource type="Texture2D" uid="uid://cvgw2mxrlr6io" path="res://asset/art/scene/c02/旧版/s02_走道/ux_进门鼠疫海报yz.png" id="32_opayu"] -[ext_resource type="Texture2D" uid="uid://c5xrsf623s0id" path="res://asset/art/scene/c02/旧版/s03_院子切换/bg_院子1楼(黄昏无人).png" id="33_ntvqq"] -[ext_resource type="Texture2D" uid="uid://djdoaustwrufe" path="res://asset/art/scene/c02/旧版/s03_院子切换/bg_院子1楼进院子(诡异).png" id="34_qirqf"] -[ext_resource type="Texture2D" uid="uid://byb4g1vemv8yt" path="res://asset/art/scene/c02/旧版/s03_院子切换/e_1012门锁.png" id="35_8at4v"] -[ext_resource type="Texture2D" uid="uid://1pnjrf1u7ry3" path="res://asset/art/scene/c02/旧版/s03_院子切换/e_符咒.png" id="36_0pioj"] -[ext_resource type="Texture2D" uid="uid://wrxhnk7enk2f" path="res://asset/art/scene/c02/旧版/s04_院子现实版/bg_院子1楼(黄昏无人).png" id="37_b2rmj"] -[ext_resource type="Texture2D" uid="uid://rknkyk5qioht" path="res://asset/art/scene/c02/旧版/s04_院子现实版/e_1012门锁.png" id="38_dkdxt"] -[ext_resource type="Texture2D" uid="uid://cr4enofe1ujuj" path="res://asset/art/scene/c02/旧版/s04_院子现实版/e_头.png" id="39_1pnwv"] -[ext_resource type="Texture2D" uid="uid://ba2wwnk1cltsf" path="res://asset/art/scene/c02/旧版/s04_院子现实版/e_水井2.png" id="40_bpxlo"] -[ext_resource type="Texture2D" uid="uid://dtlur83cgomss" path="res://asset/art/scene/c02/旧版/s04_院子现实版/e_猫咪.png" id="41_8k0wp"] -[ext_resource type="Texture2D" uid="uid://cadnjtq5vs24m" path="res://asset/art/scene/c02/旧版/s04_院子现实版/e_猫咪1.png" id="42_i3giu"] -[ext_resource type="Texture2D" uid="uid://c4m1k577sgxp8" path="res://asset/art/scene/c02/旧版/s04_院子现实版/e_纸条.png" id="43_5ddnu"] -[ext_resource type="Texture2D" uid="uid://j6ep7aal022b" path="res://asset/art/scene/c02/旧版/s04_院子现实版/e_老鼠2.png" id="44_n5kir"] -[ext_resource type="Texture2D" uid="uid://dcnlkhicejjqk" path="res://asset/art/scene/c02/旧版/s04_院子现实版/e_铁门.png" id="45_1o2b5"] -[ext_resource type="Texture2D" uid="uid://i16byso2sxio" path="res://asset/art/scene/c02/旧版/s04_院子现实版/e_铁门栏杆背景部分.png" id="46_lavin"] -[ext_resource type="Texture2D" uid="uid://btjhwktts4sfk" path="res://asset/art/scene/c02/旧版/s04_院子现实版/e_铁门锁.png" id="47_r0j3d"] -[ext_resource type="Texture2D" uid="uid://bvkwihmpu718g" path="res://asset/art/scene/c02/旧版/s04_院子现实版/fg_前景.png" id="48_5pb6y"] -[ext_resource type="Texture2D" uid="uid://b72loyn1of7tb" path="res://asset/art/scene/c02/旧版/s04_院子现实版/fg_楼梯.png" id="49_5emwd"] -[ext_resource type="Texture2D" uid="uid://b8shum8twdn8l" path="res://asset/art/scene/c02/旧版/s04_院子现实版/ux_工尺谱纸条.png" id="50_6g5g1"] -[ext_resource type="Texture2D" uid="uid://cl8no405v4hsk" path="res://asset/art/scene/c02/旧版/s05_1012外间现实版/bg_1012外间.png" id="51_gkmib"] -[ext_resource type="Texture2D" uid="uid://d04bppjl5h3vo" path="res://asset/art/scene/c02/旧版/s05_1012外间现实版/fg_1012外间.png" id="52_gar60"] -[ext_resource type="Texture2D" uid="uid://bykkjm7wker46" path="res://asset/art/scene/c02/旧版/s05_1012外间现实版/ux_公寓告示1.png" id="53_tmprk"] -[ext_resource type="Texture2D" uid="uid://d1cmto7bvap2g" path="res://asset/art/scene/c02/旧版/s06_院子回忆版/bg_院子1楼(黄昏有人).png" id="54_22u1u"] -[ext_resource type="Texture2D" uid="uid://dd65k4gvxokyt" path="res://asset/art/scene/c02/旧版/s06_院子回忆版/e_1014 开门.png" id="55_am4xr"] -[ext_resource type="Texture2D" uid="uid://cxi1hcf478a7v" path="res://asset/art/scene/c02/旧版/s06_院子回忆版/e_剪刀.png" id="56_f3l6m"] -[ext_resource type="Texture2D" uid="uid://dhn2bymxsicp6" path="res://asset/art/scene/c02/旧版/s06_院子回忆版/e_水井.png" id="57_68ie8"] -[ext_resource type="Texture2D" uid="uid://cufsrb646s8xm" path="res://asset/art/scene/c02/旧版/s06_院子回忆版/e_灯笼调色黄昏.png" id="58_wgyj3"] -[ext_resource type="Texture2D" uid="uid://cw5cmoh3sa4c8" path="res://asset/art/scene/c02/旧版/s06_院子回忆版/e_父女.png" id="59_bet5o"] -[ext_resource type="Texture2D" uid="uid://c2nnq6415g3bg" path="res://asset/art/scene/c02/旧版/s06_院子回忆版/e_给男孩的绳子.png" id="60_vheyw"] -[ext_resource type="Texture2D" uid="uid://djk7odgdg2pxm" path="res://asset/art/scene/c02/旧版/s06_院子回忆版/e_药铺.png" id="61_844n4"] -[ext_resource type="Texture2D" uid="uid://ciq7uoe3nmmrq" path="res://asset/art/scene/c02/旧版/s06_院子回忆版/fg_有人.png" id="62_s432b"] -[ext_resource type="Texture2D" uid="uid://wge8cr5h5p78" path="res://asset/art/scene/c02/旧版/s06_院子回忆版/fg_楼梯2.png" id="63_6wk74"] -[ext_resource type="Texture2D" uid="uid://cgue0x46x47nt" path="res://asset/art/scene/c02/旧版/s07_过道回忆版/bg_过道(回忆版).png" id="64_x345t"] -[ext_resource type="Texture2D" uid="uid://blaox0jqpnku8" path="res://asset/art/scene/c02/旧版/s08_1012外间回忆版/bg_1012外间(回忆版).png" id="65_t4it3"] -[ext_resource type="Texture2D" uid="uid://cipr4k0ydx4ll" path="res://asset/art/scene/c02/旧版/s08_1012外间回忆版/fg_前景.png" id="66_o1skh"] -[ext_resource type="Texture2D" uid="uid://daatxibaqsrpi" path="res://asset/art/scene/c02/旧版/s08_1012外间回忆版/ux_保卫室挂画特写.png" id="67_5jk2f"] -[ext_resource type="Texture2D" uid="uid://beimoqsbx38im" path="res://asset/art/scene/c02/旧版/s08_1012外间回忆版/ux_花名册.png" id="68_33f70"] -[ext_resource type="Texture2D" uid="uid://d3x6sl377cy4" path="res://asset/art/scene/c02/旧版/s09_1014现实版/bg_1014房间-回忆版.png" id="69_gb46h"] -[ext_resource type="Texture2D" uid="uid://bo30bcswcstre" path="res://asset/art/scene/c02/旧版/s10_裂缝通道/bg_裂缝通道.png" id="70_qyu8r"] -[ext_resource type="Texture2D" uid="uid://dpmf4w76ln2uo" path="res://asset/art/scene/c02/旧版/s10_裂缝通道/fg_裂缝通道.png" id="71_rnr6p"] -[ext_resource type="Texture2D" uid="uid://dacmld3f2y74j" path="res://asset/art/scene/c02/旧版/s11_3014回忆版/bg_3014里间与墙内空间.png" id="72_ihfqt"] -[ext_resource type="Texture2D" uid="uid://dx8lotw5r437b" path="res://asset/art/scene/c02/旧版/s11_3014回忆版/bg_裂缝通道.png" id="73_3konk"] -[ext_resource type="Texture2D" uid="uid://c73bxg5jnciy8" path="res://asset/art/scene/c02/旧版/s11_3014回忆版/e_书桌组.png" id="74_1x1b1"] -[ext_resource type="Texture2D" uid="uid://b6u0mok6ofk4a" path="res://asset/art/scene/c02/旧版/s11_3014回忆版/e_墙壁.png" id="75_m3of4"] -[ext_resource type="Texture2D" uid="uid://bhqo0bna3j64g" path="res://asset/art/scene/c02/旧版/s11_3014回忆版/e_工具盒.png" id="76_5m5uu"] -[ext_resource type="Texture2D" uid="uid://c47wvkoocmt3j" path="res://asset/art/scene/c02/旧版/s11_3014回忆版/e_布.png" id="77_oqdmm"] -[ext_resource type="Texture2D" uid="uid://bx3l3hohlftrs" path="res://asset/art/scene/c02/旧版/s11_3014回忆版/e_布掀开.png" id="78_7x7oa"] -[ext_resource type="Texture2D" uid="uid://bu8xfivm2dpp4" path="res://asset/art/scene/c02/旧版/s11_3014回忆版/e_戏台.png" id="79_xi0ks"] -[ext_resource type="Texture2D" uid="uid://bvqcc32qfw00s" path="res://asset/art/scene/c02/旧版/s11_3014回忆版/e_旋转锁.png" id="80_ru4hp"] -[ext_resource type="Texture2D" uid="uid://y8j8q5xjhcxj" path="res://asset/art/scene/c02/旧版/s11_3014回忆版/e_日历.png" id="81_22kw3"] -[ext_resource type="Texture2D" uid="uid://ddwhyov3adyg8" path="res://asset/art/scene/c02/旧版/s11_3014回忆版/e_桌子.png" id="82_x2mj4"] -[ext_resource type="Texture2D" uid="uid://c5k43m4ewbl50" path="res://asset/art/scene/c02/旧版/s11_3014回忆版/e_桌面钥匙组.png" id="83_byylp"] -[ext_resource type="Texture2D" uid="uid://b7dgb5p6jrxpf" path="res://asset/art/scene/c02/旧版/s11_3014回忆版/e_移动后的桌子.png" id="84_6a1gn"] -[ext_resource type="Texture2D" uid="uid://buphc40q0fpk4" path="res://asset/art/scene/c02/旧版/s11_3014回忆版/e_蜡烛.png" id="85_gngjk"] -[ext_resource type="Texture2D" uid="uid://bh174vbtifufo" path="res://asset/art/scene/c02/旧版/s11_3014回忆版/e_蜡烛灭.png" id="86_6em6e"] -[ext_resource type="Texture2D" uid="uid://cm1rkmeyor7hy" path="res://asset/art/scene/c02/旧版/s11_3014回忆版/fg_前景.png" id="87_4peqb"] -[ext_resource type="Texture2D" uid="uid://cufyfa8r6aojv" path="res://asset/art/scene/c02/旧版/s11_3014回忆版/ux_抱朴子内篇原书被撕.png" id="88_yn86o"] -[ext_resource type="Texture2D" uid="uid://dgih5d7b30mbl" path="res://asset/art/scene/c02/旧版/s11_3014回忆版/ux_桌面特写.png" id="89_7cc4o"] -[ext_resource type="Texture2D" uid="uid://7jm6klr583rd" path="res://asset/art/scene/c02/旧版/s11_3014回忆版/ux_桌面特写黑色氛围.png" id="90_8ul2l"] -[ext_resource type="Texture2D" uid="uid://c4jovytbyrvxs" path="res://asset/art/scene/c02/旧版/s12_1014诡异版/bg_1014诡异幻境红色背景.png" id="91_2d2na"] -[ext_resource type="Texture2D" uid="uid://bnvrbjxo3duu2" path="res://asset/art/scene/c02/旧版/s12_1014诡异版/bg_1014诡异幻境背景.png" id="92_ql0j5"] -[ext_resource type="Texture2D" uid="uid://dia45b81k8yf5" path="res://asset/art/scene/c02/旧版/s12_1014诡异版/bg_1014诡异版人影背景1.png" id="93_16kff"] -[ext_resource type="Texture2D" uid="uid://dtxnxcmcnfokv" path="res://asset/art/scene/c02/旧版/s12_1014诡异版/bg_1014诡异版人影背景2.png" id="94_v2t7x"] -[ext_resource type="Texture2D" uid="uid://cnsxveyb5rxf5" path="res://asset/art/scene/c02/旧版/s12_1014诡异版/e_单块碎片灰.png" id="95_y80tt"] -[ext_resource type="Texture2D" uid="uid://b1xb1jvedrolb" path="res://asset/art/scene/c02/旧版/s12_1014诡异版/e_单块碎片白.png" id="96_4mq14"] -[ext_resource type="Texture2D" uid="uid://byc1q0v3axuwf" path="res://asset/art/scene/c02/旧版/s12_1014诡异版/e_单块碎片黑.png" id="97_upa8s"] -[ext_resource type="Texture2D" uid="uid://ct12wdsm57eyy" path="res://asset/art/scene/c02/旧版/s12_1014诡异版/e_床上物品组.png" id="98_w87sy"] -[ext_resource type="Texture2D" uid="uid://blec2jgrpsbv" path="res://asset/art/scene/c02/旧版/s12_1014诡异版/e_日历(死).png" id="99_xi0ts"] -[ext_resource type="Texture2D" uid="uid://cnla2y06uqsnj" path="res://asset/art/scene/c02/旧版/s12_1014诡异版/e_符咒碗1.png" id="100_4wo32"] -[ext_resource type="Texture2D" uid="uid://xop3ml7ak6wa" path="res://asset/art/scene/c02/旧版/s12_1014诡异版/e_符咒碗2.png" id="101_0wrsq"] -[ext_resource type="Texture2D" uid="uid://dixkjo8pwcp1k" path="res://asset/art/scene/c02/旧版/s12_1014诡异版/e_符纸.png" id="102_iqlrp"] -[ext_resource type="Texture2D" uid="uid://ww2pux3ecvd3" path="res://asset/art/scene/c02/旧版/s12_1014诡异版/e_符纸碎片.png" id="103_sntao"] -[ext_resource type="Texture2D" uid="uid://dx3ot1fup8lbn" path="res://asset/art/scene/c02/旧版/s12_1014诡异版/e_老鼠影.png" id="104_7o67o"] -[ext_resource type="Texture2D" uid="uid://ctlc7mec5rnxx" path="res://asset/art/scene/c02/旧版/s12_1014诡异版/e_锁魂咒印.png" id="105_8wtbl"] -[ext_resource type="Texture2D" uid="uid://bjvungu3tb155" path="res://asset/art/scene/c02/旧版/s12_1014诡异版/fg_1014前景.png" id="106_2h1ja"] -[ext_resource type="Texture2D" uid="uid://dcy3tf4td481s" path="res://asset/art/scene/c02/旧版/s12_1014诡异版/ux_恐怖幻境纸条1.png" id="107_lwdop"] -[ext_resource type="Texture2D" uid="uid://ctswav7aw2vvb" path="res://asset/art/scene/c02/旧版/s12_1014诡异版/ux_恐怖幻境纸条2.png" id="108_1bjaj"] -[ext_resource type="Texture2D" uid="uid://ddcburr57lb75" path="res://asset/art/scene/c02/旧版/s12_1014诡异版/bg_衔接阴影.png" id="109_xkscu"] -[ext_resource type="Texture2D" uid="uid://da3v7s68728af" path="res://asset/art/scene/c02/旧版/s13_院子诡异版/bg_院子1楼(黑).png" id="110_1h1mj"] -[ext_resource type="Texture2D" uid="uid://bgflt8ivx1fmp" path="res://asset/art/scene/c02/旧版/s13_院子诡异版/e_1014门锁.png" id="111_tgctv"] -[ext_resource type="Texture2D" uid="uid://dec0rudexctcs" path="res://asset/art/scene/c02/旧版/s13_院子诡异版/e_掉着小猫的绳子.png" id="112_lw5wp"] -[ext_resource type="Texture2D" uid="uid://d3o8gxjbl8734" path="res://asset/art/scene/c02/旧版/s13_院子诡异版/e_排队纸人调色.png" id="113_vyuc2"] -[ext_resource type="Texture2D" uid="uid://dgjpfjw7cgox5" path="res://asset/art/scene/c02/旧版/s13_院子诡异版/e_李氏纸人调色.png" id="114_rvb57"] -[ext_resource type="Texture2D" uid="uid://pguxkai81sri" path="res://asset/art/scene/c02/旧版/s13_院子诡异版/e_水井诡异断裂.png" id="115_g7wir"] -[ext_resource type="Texture2D" uid="uid://brsw06rkkitgb" path="res://asset/art/scene/c02/旧版/s13_院子诡异版/e_灯笼.png" id="116_6foyf"] -[ext_resource type="Texture2D" uid="uid://dpq6nf8supbjv" path="res://asset/art/scene/c02/旧版/s13_院子诡异版/e_破木板.png" id="117_iko5b"] -[ext_resource type="Texture2D" uid="uid://blgnupwgygitf" path="res://asset/art/scene/c02/旧版/s13_院子诡异版/e_破木板移开.png" id="118_x52ko"] -[ext_resource type="Texture2D" uid="uid://duhowscy8hbfa" path="res://asset/art/scene/c02/旧版/s13_院子诡异版/e_纸团.png" id="119_cbxtn"] -[ext_resource type="Texture2D" uid="uid://icbp7sj6yckf" path="res://asset/art/scene/c02/旧版/s13_院子诡异版/e_纸钱.png" id="120_yfvqa"] -[ext_resource type="Texture2D" uid="uid://dp5gs2qyvxwrb" path="res://asset/art/scene/c02/旧版/s13_院子诡异版/e_药铺调色.png" id="121_3xebx"] -[ext_resource type="Texture2D" uid="uid://b3ootg88b63rb" path="res://asset/art/scene/c02/旧版/s13_院子诡异版/fg_楼梯调色后.png" id="122_263p1"] -[ext_resource type="Texture2D" uid="uid://c3cgkj2cjb73j" path="res://asset/art/scene/c02/旧版/s13_院子诡异版/ux_李氏娃娃纸人特写.png" id="123_go2or"] -[ext_resource type="Texture2D" uid="uid://7c8pthepxqup" path="res://asset/art/scene/c02/旧版/s13_院子诡异版/ux_药秤特写.png" id="124_fmu83"] -[ext_resource type="Texture2D" uid="uid://c657nmkngoi63" path="res://asset/art/scene/c02/旧版/s13_院子诡异版/ux_药车前纸条.png" id="125_qt3bd"] -[ext_resource type="Texture2D" uid="uid://cp3ky6oi407nr" path="res://asset/art/scene/c02/旧版/s13_院子诡异版/ux_药车桌面.png" id="126_6e1gs"] -[ext_resource type="Texture2D" uid="uid://bdgybbk0mjdfu" path="res://asset/art/scene/c02/旧版/s13_院子诡异版/ux_药车桌面灯光氛围.png" id="127_g44pi"] -[ext_resource type="Texture2D" uid="uid://diipofcj57pif" path="res://asset/art/scene/c02/旧版/s14_过道诡异版/bg_过道(诡异版).png" id="128_108vt"] -[ext_resource type="Texture2D" uid="uid://cn35kih5akphr" path="res://asset/art/scene/c02/旧版/s14_过道诡异版/e_欢迎小蝶回家横幅.png" id="129_eroid"] -[ext_resource type="Texture2D" uid="uid://cyue3suixb3eo" path="res://asset/art/scene/c02/旧版/s14_过道诡异版/e_碗和蜡烛.png" id="130_yfne1"] -[ext_resource type="Texture2D" uid="uid://dythpnd5pgaco" path="res://asset/art/scene/c02/旧版/s14_过道诡异版/e_碗和蜡烛(放苹果.png" id="131_56oly"] -[ext_resource type="Texture2D" uid="uid://dt24lj1gw1xht" path="res://asset/art/scene/c02/旧版/s14_过道诡异版/ux_过道蜡烛碗特写.png" id="132_va66x"] -[ext_resource type="Texture2D" uid="uid://imywljabomc7" path="res://asset/art/scene/c02/旧版/s15_1014家具版/bg_1014房间-家具版.png" id="133_24nxe"] -[ext_resource type="Texture2D" uid="uid://boq4eogik7ipr" path="res://asset/art/scene/c02/旧版/s15_1014家具版/e_李氏纸人.png" id="134_1yygg"] -[ext_resource type="Texture2D" uid="uid://c2gflnskeqiqd" path="res://asset/art/scene/c02/旧版/s15_1014家具版/e_窗户-李氏转身.png" id="135_0856m"] -[ext_resource type="Texture2D" uid="uid://byyfo8n2vhk6e" path="res://asset/art/scene/c02/旧版/s15_1014家具版/fg_前景.png" id="136_b78g1"] +[gd_resource type="SpriteFrames" format=3 uid="uid://ccrfw5wsbxvq4"] [resource] -animations = [{ -"frames": [{ -"duration": 1.0, -"texture": ExtResource("1_k3ot7") -}], -"loop": true, -"name": &"c01_s01_bg_夜晚有墙", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("2_eg3uh") -}], -"loop": true, -"name": &"c01_s01_e_老奶奶喂老鼠", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("3_s15vv") -}], -"loop": true, -"name": &"c01_s02_f_序章标题", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("4_mo80j") -}], -"loop": true, -"name": &"c01_s02_ux_老鼠吃肉_吃完", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("5_npyjw") -}], -"loop": true, -"name": &"c01_s02_ux_老鼠吃肉_无光黑", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("6_mdnkw") -}], -"loop": true, -"name": &"c01_s02_ux_老鼠吃肉_有光晕黑", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("7_6lbmm") -}], -"loop": true, -"name": &"c01_s03_bg_夜晚门关着 有红色印记", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("8_wqh8b") -}], -"loop": true, -"name": &"c01_s03_e_柱子有红纹gaise", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("9_sf8ni") -}], -"loop": true, -"name": &"c01_s03_ux_背景gaise", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("10_vf3m0") -}], -"loop": true, -"name": &"c01_s03_ux_鬼差脸gaise", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("11_1ntts") -}], -"loop": true, -"name": &"c01_s04_bg_底图带楼", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("12_tccdj") -}], -"loop": true, -"name": &"c01_s04_e_树", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("13_1plt5") -}], -"loop": true, -"name": &"c01_s04_e_轿车", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("14_vao82") -}], -"loop": true, -"name": &"c01_s04_f_动画字幕1", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("15_bqgqw") -}], -"loop": true, -"name": &"c01_s04_f_动画字幕1-05", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("16_o1kwd") -}], -"loop": true, -"name": &"c01_s04_f_动画字幕1-06", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("17_0dtov") -}], -"loop": true, -"name": &"c01_s04_f_第一章标题", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("18_n1rqy") -}], -"loop": true, -"name": &"c01_s04_fg_前景1", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("19_1jd4o") -}], -"loop": true, -"name": &"c01_s04_fg_前景2", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("20_bpq55") -}], -"loop": true, -"name": &"c01_s04_fg_前景3", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("21_yvd7t") -}], -"loop": true, -"name": &"c02_s01_bg_公寓入口", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("22_h14fi") -}], -"loop": true, -"name": &"c02_s01_e_入口寻人启事", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("23_71xtk") -}], -"loop": true, -"name": &"c02_s01_ux_院长的信1", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("24_m3qy2") -}], -"loop": true, -"name": &"c02_s01_ux_院长的信2", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("25_22xvr") -}], -"loop": true, -"name": &"c02_s02_bg_过道", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("26_r72rq") -}], -"loop": true, -"name": &"c02_s02_e_八音盒组", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("27_imyyr") -}], -"loop": true, -"name": &"c02_s02_e_纸人", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("28_pngit") -}], -"loop": true, -"name": &"c02_s02_ux_纸条包", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("29_3x2qb") -}], -"loop": true, -"name": &"c02_s02_ux_纸条包钥匙", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("30_8d7d2") -}], -"loop": true, -"name": &"c02_s02_ux_纸条展开", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("31_5f2ix") -}], -"loop": true, -"name": &"c02_s02_ux_进门鼠疫海报wz", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("32_opayu") -}], -"loop": true, -"name": &"c02_s02_ux_进门鼠疫海报yz", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("33_ntvqq") -}], -"loop": true, -"name": &"c02_s03_bg_院子1楼(黄昏无人)", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("34_qirqf") -}], -"loop": true, -"name": &"c02_s03_bg_院子1楼进院子(诡异)", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("35_8at4v") -}], -"loop": true, -"name": &"c02_s03_e_1012门锁", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("36_0pioj") -}], -"loop": true, -"name": &"c02_s03_e_符咒", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("37_b2rmj") -}], -"loop": true, -"name": &"c02_s04_bg_院子1楼(黄昏无人)", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("38_dkdxt") -}], -"loop": true, -"name": &"c02_s04_e_1012门锁", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("39_1pnwv") -}], -"loop": true, -"name": &"c02_s04_e_头", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("40_bpxlo") -}], -"loop": true, -"name": &"c02_s04_e_水井2", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("41_8k0wp") -}], -"loop": true, -"name": &"c02_s04_e_猫咪", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("42_i3giu") -}], -"loop": true, -"name": &"c02_s04_e_猫咪1", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("43_5ddnu") -}], -"loop": true, -"name": &"c02_s04_e_纸条", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("44_n5kir") -}], -"loop": true, -"name": &"c02_s04_e_老鼠2", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("45_1o2b5") -}], -"loop": true, -"name": &"c02_s04_e_铁门", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("46_lavin") -}], -"loop": true, -"name": &"c02_s04_e_铁门栏杆背景部分", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("47_r0j3d") -}], -"loop": true, -"name": &"c02_s04_e_铁门锁", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("48_5pb6y") -}], -"loop": true, -"name": &"c02_s04_fg_前景", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("49_5emwd") -}], -"loop": true, -"name": &"c02_s04_fg_楼梯", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("50_6g5g1") -}], -"loop": true, -"name": &"c02_s04_ux_工尺谱纸条", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("51_gkmib") -}], -"loop": true, -"name": &"c02_s05_bg_1012外间", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("52_gar60") -}], -"loop": true, -"name": &"c02_s05_fg_1012外间", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("53_tmprk") -}], -"loop": true, -"name": &"c02_s05_ux_公寓告示1", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("54_22u1u") -}], -"loop": true, -"name": &"c02_s06_bg_院子1楼(黄昏有人)", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("55_am4xr") -}], -"loop": true, -"name": &"c02_s06_e_1014 开门", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("56_f3l6m") -}], -"loop": true, -"name": &"c02_s06_e_剪刀", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("57_68ie8") -}], -"loop": true, -"name": &"c02_s06_e_水井", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("58_wgyj3") -}], -"loop": true, -"name": &"c02_s06_e_灯笼调色黄昏", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("59_bet5o") -}], -"loop": true, -"name": &"c02_s06_e_父女", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("60_vheyw") -}], -"loop": true, -"name": &"c02_s06_e_给男孩的绳子", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("61_844n4") -}], -"loop": true, -"name": &"c02_s06_e_药铺", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("62_s432b") -}], -"loop": true, -"name": &"c02_s06_fg_有人", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("63_6wk74") -}], -"loop": true, -"name": &"c02_s06_fg_楼梯2", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("64_x345t") -}], -"loop": true, -"name": &"c02_s07_bg_过道(回忆版)", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("65_t4it3") -}], -"loop": true, -"name": &"c02_s08_bg_1012外间(回忆版)", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("66_o1skh") -}], -"loop": true, -"name": &"c02_s08_fg_前景", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("67_5jk2f") -}], -"loop": true, -"name": &"c02_s08_ux_保卫室挂画特写", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("68_33f70") -}], -"loop": true, -"name": &"c02_s08_ux_花名册", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("69_gb46h") -}], -"loop": true, -"name": &"c02_s09_bg_1014房间-回忆版", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("70_qyu8r") -}], -"loop": true, -"name": &"c02_s10_bg_裂缝通道", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("71_rnr6p") -}], -"loop": true, -"name": &"c02_s10_fg_裂缝通道", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("72_ihfqt") -}], -"loop": true, -"name": &"c02_s11_bg_3014里间+墙内空间", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("73_3konk") -}], -"loop": true, -"name": &"c02_s11_bg_裂缝通道", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("74_1x1b1") -}], -"loop": true, -"name": &"c02_s11_e_书桌组", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("75_m3of4") -}], -"loop": true, -"name": &"c02_s11_e_墙壁", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("76_5m5uu") -}], -"loop": true, -"name": &"c02_s11_e_工具盒", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("77_oqdmm") -}], -"loop": true, -"name": &"c02_s11_e_布", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("78_7x7oa") -}], -"loop": true, -"name": &"c02_s11_e_布掀开", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("79_xi0ks") -}], -"loop": true, -"name": &"c02_s11_e_戏台", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("80_ru4hp") -}], -"loop": true, -"name": &"c02_s11_e_旋转锁", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("81_22kw3") -}], -"loop": true, -"name": &"c02_s11_e_日历", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("82_x2mj4") -}], -"loop": true, -"name": &"c02_s11_e_桌子", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("83_byylp") -}], -"loop": true, -"name": &"c02_s11_e_桌面钥匙组", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("84_6a1gn") -}], -"loop": true, -"name": &"c02_s11_e_移动后的桌子", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("85_gngjk") -}], -"loop": true, -"name": &"c02_s11_e_蜡烛", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("86_6em6e") -}], -"loop": true, -"name": &"c02_s11_e_蜡烛灭", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("87_4peqb") -}], -"loop": true, -"name": &"c02_s11_fg_前景", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("88_yn86o") -}], -"loop": true, -"name": &"c02_s11_ux_抱朴子内篇原书被撕", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("89_7cc4o") -}], -"loop": true, -"name": &"c02_s11_ux_桌面特写", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("90_8ul2l") -}], -"loop": true, -"name": &"c02_s11_ux_桌面特写黑色氛围", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("91_2d2na") -}], -"loop": true, -"name": &"c02_s12_bg_1014诡异幻境红色背景", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("92_ql0j5") -}], -"loop": true, -"name": &"c02_s12_bg_1014诡异幻境背景", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("93_16kff") -}], -"loop": true, -"name": &"c02_s12_bg_1014诡异版人影背景1", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("94_v2t7x") -}], -"loop": true, -"name": &"c02_s12_bg_1014诡异版人影背景2", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("95_y80tt") -}], -"loop": true, -"name": &"c02_s12_e_单块碎片灰", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("96_4mq14") -}], -"loop": true, -"name": &"c02_s12_e_单块碎片白", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("97_upa8s") -}], -"loop": true, -"name": &"c02_s12_e_单块碎片黑", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("98_w87sy") -}], -"loop": true, -"name": &"c02_s12_e_床上物品组", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("99_xi0ts") -}], -"loop": true, -"name": &"c02_s12_e_日历(死)", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("100_4wo32") -}], -"loop": true, -"name": &"c02_s12_e_符咒碗1", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("101_0wrsq") -}], -"loop": true, -"name": &"c02_s12_e_符咒碗2", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("102_iqlrp") -}], -"loop": true, -"name": &"c02_s12_e_符纸", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("103_sntao") -}], -"loop": true, -"name": &"c02_s12_e_符纸碎片", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("104_7o67o") -}], -"loop": true, -"name": &"c02_s12_e_老鼠影", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("105_8wtbl") -}], -"loop": true, -"name": &"c02_s12_e_锁魂咒印", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("106_2h1ja") -}], -"loop": true, -"name": &"c02_s12_fg_1014前景", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("107_lwdop") -}], -"loop": true, -"name": &"c02_s12_ux_恐怖幻境纸条1", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("108_1bjaj") -}], -"loop": true, -"name": &"c02_s12_ux_恐怖幻境纸条2", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("109_xkscu") -}], -"loop": true, -"name": &"c02_s12_ux_衔接阴影", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("110_1h1mj") -}], -"loop": true, -"name": &"c02_s13_bg_院子1楼(黑)", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("111_tgctv") -}], -"loop": true, -"name": &"c02_s13_e_1014门锁", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("112_lw5wp") -}], -"loop": true, -"name": &"c02_s13_e_掉着小猫的绳子", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("113_vyuc2") -}], -"loop": true, -"name": &"c02_s13_e_排队纸人调色", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("114_rvb57") -}], -"loop": true, -"name": &"c02_s13_e_李氏纸人调色", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("115_g7wir") -}], -"loop": true, -"name": &"c02_s13_e_水井诡异断裂", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("116_6foyf") -}], -"loop": true, -"name": &"c02_s13_e_灯笼", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("117_iko5b") -}], -"loop": true, -"name": &"c02_s13_e_破木板", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("118_x52ko") -}], -"loop": true, -"name": &"c02_s13_e_破木板移开", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("119_cbxtn") -}], -"loop": true, -"name": &"c02_s13_e_纸团", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("120_yfvqa") -}], -"loop": true, -"name": &"c02_s13_e_纸钱", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("121_3xebx") -}], -"loop": true, -"name": &"c02_s13_e_药铺调色", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("122_263p1") -}], -"loop": true, -"name": &"c02_s13_fg_楼梯调色后", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("123_go2or") -}], -"loop": true, -"name": &"c02_s13_ux_李氏娃娃纸人特写", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("124_fmu83") -}], -"loop": true, -"name": &"c02_s13_ux_药秤特写", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("125_qt3bd") -}], -"loop": true, -"name": &"c02_s13_ux_药车前纸条", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("126_6e1gs") -}], -"loop": true, -"name": &"c02_s13_ux_药车桌面", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("127_g44pi") -}], -"loop": true, -"name": &"c02_s13_ux_药车桌面灯光氛围", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("128_108vt") -}], -"loop": true, -"name": &"c02_s14_bg_过道(诡异版)", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("129_eroid") -}], -"loop": true, -"name": &"c02_s14_e_欢迎小蝶回家横幅", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("130_yfne1") -}], -"loop": true, -"name": &"c02_s14_e_碗和蜡烛", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("131_56oly") -}], -"loop": true, -"name": &"c02_s14_e_碗和蜡烛(放苹果", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("132_va66x") -}], -"loop": true, -"name": &"c02_s14_ux_过道蜡烛碗特写", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("133_24nxe") -}], -"loop": true, -"name": &"c02_s15_bg_1014房间-家具版", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("134_1yygg") -}], -"loop": true, -"name": &"c02_s15_e_李氏纸人", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("135_0856m") -}], -"loop": true, -"name": &"c02_s15_e_窗户-李氏转身", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("136_b78g1") -}], -"loop": true, -"name": &"c02_s15_fg_前景", -"speed": 5.0 -}, { -"frames": [], -"loop": true, -"name": &"default", -"speed": 5.0 -}] diff --git a/manager/audio_manager/audio_manager.gd b/manager/audio_manager/audio_manager.gd index b89078fa..210be7d9 100644 --- a/manager/audio_manager/audio_manager.gd +++ b/manager/audio_manager/audio_manager.gd @@ -91,7 +91,7 @@ func _find_group_by_name(group_name: StringName) -> VibeGroup: ## 核心方法:播放一个指定的 VibeGroup -func play_group(group_name: StringName): +func play_group(group_name: StringName, ease_in := 1.0): var group = _find_group_by_name(group_name) if not is_instance_valid(group): printerr("VibeManager: VibeGroup is not valid. group_name:", group_name) @@ -101,17 +101,23 @@ func play_group(group_name: StringName): return var vibe_player = VibeGroupPlayer.new(group) vibe_player.name = group_name - add_child(vibe_player) vibe_player_dict[group_name] = vibe_player + var tween = create_tween() + vibe_player._base_db = -100 + add_child(vibe_player) + tween.tween_method(vibe_player.set_volume_linear, 0.0, 1.0, ease_in) vibe_player.play() -func stop_group(group_name: StringName): - if is_queued_for_deletion(): - return +func stop_group(group_name: StringName, ease_out := 1.0): if not vibe_player_dict.has(group_name): return var vibe_player = vibe_player_dict[group_name] vibe_player_dict.erase(group_name) - remove_child(vibe_player) - vibe_player.stop_and_free() + var tween = create_tween() + tween.tween_method(vibe_player.set_volume_linear, 1.0, 0.0, ease_out) + tween.tween_callback(vibe_player.stop_and_free) + + + + diff --git a/manager/audio_manager/vibe_group_player.gd b/manager/audio_manager/vibe_group_player.gd index e9cdf401..f29f560a 100644 --- a/manager/audio_manager/vibe_group_player.gd +++ b/manager/audio_manager/vibe_group_player.gd @@ -7,6 +7,10 @@ var vibe_group: VibeGroup var _base_player: AudioStreamPlayer var _embellishment_players = [] as Array[AudioStreamPlayer] var _embellishment_timers = [] as Array[Timer] +var _base_db := 0.0: + set(val): + _base_db = val + _base_player.volume_db = val func _init(group: VibeGroup): @@ -16,7 +20,7 @@ func _init(group: VibeGroup): _base_player.name = "BasePlayer" _base_player.bus = "game_sfx" _base_player.stream = group.base_sound - _base_player.volume_db = group.group_db + group.base_sound_db + _refresh_base_player_db() # 循环播放 if vibe_group.base_sound.get_length() > 0: _base_player.finished.connect(_base_player.play) @@ -51,14 +55,28 @@ func _on_embellishment_timer_timeout(id: int): # 增加随机性 timer.wait_time = randf_range(embellishment.min_interval, embellishment.max_interval) timer.start() - player.volume_db = (vibe_group.group_db + embellishment.db) * randf_range(0.8, 1.2) + player.volume_db = _base_db + (vibe_group.group_db + embellishment.db) * randf_range(0.8, 1.2) player.pitch_scale = randf_range(0.8, 1.2) player.play() -func _ready(): - if Engine.is_editor_hint(): +func _refresh_base_player_db() -> void: + _base_player.volume_db = _base_db + vibe_group.group_db + vibe_group.base_sound_db + + +func _refresh_embellishment_player_db(id: int) -> void: + if _embellishment_players[id] == null: return + _embellishment_players[id].volume_db = ( + _base_db + vibe_group.group_db + vibe_group.embellishments[id].db + ) + + +func set_volume_linear(volume: float): + _base_db = linear_to_db(volume) + for i in range(vibe_group.embellishments.size()): + _refresh_embellishment_player_db(i) + _refresh_base_player_db() func play(): @@ -72,7 +90,7 @@ func play(): # 如果 loop,则 min_interval 与 max_interval 无效 if embellishment.loop: var player = _embellishment_players[i] - player.volume_db = vibe_group.group_db + embellishment.db + _refresh_embellishment_player_db(i) if player.stream: player.play() player.finished.connect(player.play) diff --git a/manager/audio_manager/vibe_sfx.gd b/manager/audio_manager/vibe_sfx.gd index 170f2c8a..58a67c8f 100644 --- a/manager/audio_manager/vibe_sfx.gd +++ b/manager/audio_manager/vibe_sfx.gd @@ -19,6 +19,14 @@ func _ready(): return if autoplay_group: switch_to(autoplay_group) + # ground 退出时,process mode 切换为 always,ease out + SceneManager.ground_transition_pre_paused.connect(_on_ground_transition_pre_paused) + + +func _on_ground_transition_pre_paused(): + if current_group: + print("[GroundTransition] VibeSfx %s ease killing group %s" % [name, current_group]) + AudioManager.stop_group(current_group) # var debug_audio_manager: AudioManager diff --git a/manager/event_manager/event_manager.gd b/manager/event_manager/event_manager.gd index 23dc0d60..a8aa7554 100644 --- a/manager/event_manager/event_manager.gd +++ b/manager/event_manager/event_manager.gd @@ -21,17 +21,19 @@ func set_stage(event_name: StringName, stage := 1) -> void: print("[EventManager] Stage updated: %s, stage: %s" % [event_name, stage]) stage_updated.emit(event_name, stage) # 如果是 handnote_ 事件,玩家进行记笔记动作 - if ( - event_name.begins_with("handnote_") - and SceneManager.get_player().character.begins_with("吕萍") - ): - # 0 初始化隐藏,1 开始显示,2 划掉,3 结束隐藏 - if stage == 1: - SceneManager.lock_player(3.0, 16, true) - SceneManager.pop_notification("ui_notify_note_update") - # 第一次记笔记,提示查看笔记 - if event_name == &"handnote_c02_road_address": - SceneManager.pop_center_notification("ui_check_note") + if SceneManager.get_player().character.begins_with("吕萍"): + if event_name == &"handnote_chapter_stage": + # 章节更新 + pass + elif event_name.begins_with("handnote_"): + # 笔记条目更新 + # 0 初始化隐藏,1 开始显示,2 划掉,3 结束隐藏 + if stage == 1: + SceneManager.lock_player(3.0, 16, true) + SceneManager.pop_notification("ui_notify_note_update") + # 第一次记笔记,提示查看笔记 + if event_name == &"handnote_c02_road_address": + SceneManager.pop_center_notification("ui_check_note") # 仅在设置的 stage > 当前 stage 时更新,相等或小于时不更新 diff --git a/manager/scene/scene_manager.gd b/manager/scene/scene_manager.gd index 6ecc2fe1..03511be9 100644 --- a/manager/scene/scene_manager.gd +++ b/manager/scene/scene_manager.gd @@ -10,6 +10,7 @@ enum VIBE { # 从 ground loader 控制该信号 signal ground_ready(ground: Ground2D) signal ground_start +signal ground_transition_pre_paused func _ready() -> void: @@ -236,6 +237,13 @@ func pop_os_with_str(translation_key: String) -> void: printerr("Player node not found") +func get_inspector() -> PropInspector: + return get_node_or_null("/root/Main/PropInspector") as PropInspector + + +### Notification + + func pop_notification(translation_key: String, number := 1) -> void: var notification_node = get_node_or_null("/root/Main/UILayer/Notification") if notification_node: @@ -260,30 +268,32 @@ func pop_center_texture(texture: Texture2D, duration := 3.5) -> void: printerr("pop_center_texture: Notification node not found") -func pop_dialog( - character: String, - content: String, - character_color := "orange", - content_color := "white", - duration := 2.5 -) -> void: - var dialog_node = get_node_or_null("/root/Main/UILayer/Dialog") - if dialog_node: - dialog_node.append_dialog(character, content, character_color, content_color, duration) - else: - printerr("Dialog node not found") +var chapter_sfx = preload("uid://qku3yk82g364") + +func pop_chapter_notification(id: int) -> void: + AudioManager.play_sfx(chapter_sfx) + var texture + match id: + 1: + texture = preload("uid://dq1tfv3vkghpa") + 2: + texture = preload("uid://bvjt8iyliunfs") + 3: + texture = preload("uid://b0koe7cw0ow5h") + 4: + texture = preload("uid://c42jwf1xl5rf4") + 5: + texture = preload("uid://two1l5i22l4i") + 6: + texture = preload("uid://d084tnd1gp4en") + _: + printerr("Invalid chapter ID: " + str(id)) + return + SceneManager.pop_center_texture(texture, 5.0) + await Util.wait(5.0) -# func pop_note(note: String, note_color := "white", duration := 2.5) -> void: -# var dialog_node = get_node_or_null("/root/Main/UILayer/Dialog") -# if dialog_node: -# dialog_node.append_note(note, note_color, duration) -# else: -# printerr("Dialog node not found") - - -func get_inspector() -> PropInspector: - return get_node_or_null("/root/Main/PropInspector") as PropInspector +### 切换场景 func checkout_index_page(transition := true) -> void: diff --git a/scene/entity/audio/sfx.gd b/scene/entity/audio/sfx.gd index 5b70b709..40ceb39c 100644 --- a/scene/entity/audio/sfx.gd +++ b/scene/entity/audio/sfx.gd @@ -24,6 +24,15 @@ func _ready() -> void: if Engine.is_editor_hint(): return finished.connect(_on_finished) + # ground 退出时,process mode 切换为 always,ease out + SceneManager.ground_transition_pre_paused.connect(_on_ground_transition_pre_paused) + + +func _on_ground_transition_pre_paused(): + if not playing: + return + print("[GroundTransition] Sfx %s ease killing..." % name) + easing_kill(1.0) func _on_finished() -> void: @@ -45,6 +54,7 @@ func global_play() -> void: func easing_kill(duration: float = 2.0) -> Tween: # stop with easing var tween = create_tween() + tween.bind_node(self) if playing: tween.tween_property(self, "volume_linear", 0.0, duration) tween.tween_callback(stop) diff --git a/scene/entity/audio/sfx2d.gd b/scene/entity/audio/sfx2d.gd index 3853dc5e..af9e4db7 100644 --- a/scene/entity/audio/sfx2d.gd +++ b/scene/entity/audio/sfx2d.gd @@ -22,13 +22,25 @@ var timer: Timer func _ready() -> void: bus = &"game_sfx" process_mode = Node.PROCESS_MODE_PAUSABLE - finished.connect(_on_finished) + if Engine.is_editor_hint(): + return timer = Timer.new() timer.autostart = autoplay and loop and loop_round_time > 0.0 and not Engine.is_editor_hint() timer.one_shot = false timer.wait_time = max(0.1, loop_round_time) timer.timeout.connect(_on_timer_timeout) add_child(timer) + finished.connect(_on_finished) + # ground 退出时,process mode 切换为 always,ease out + SceneManager.ground_transition_pre_paused.connect(_on_ground_transition_pre_paused) + + +func _on_ground_transition_pre_paused(): + if not playing: + return + print("[GroundTransition] Sfx2D %s ease killing..." % name) + easing_kill(1.0) + func _on_timer_timeout() -> void: @@ -60,5 +72,6 @@ func easing_kill(duration: float = 2.0) -> void: # stop with easing if playing: var tween = create_tween() + tween.bind_node(self) tween.tween_property(self, "volume_linear", 0.0, duration) tween.tween_callback(stop) diff --git a/scene/ground/ground_loader.gd b/scene/ground/ground_loader.gd index ffc578fe..6d24e64c 100644 --- a/scene/ground/ground_loader.gd +++ b/scene/ground/ground_loader.gd @@ -47,7 +47,9 @@ static var GROUND_SCENE_PATH_DICT = { "c02_s16": "uid://22hc3oe8t0id", "c02_s17": "uid://cbr6gbgrl2wb1", "c02_s18": "uid://d27gv3pbkn4b8", - "c03_s01": "uid://dlrbhfvnd3cs0", # 瞎子理发店 + "c03_s01": "uid://dlrbhfvnd3cs0", # 三楼 + "c03_s02": "uid://rkro7u5wd3t1", # 三楼内侧 + "c03_s03": "uid://bsqt2c061fmin", # 瞎子理发店 } @@ -117,6 +119,8 @@ func _load_save(): func transition_to_scene(scene_name: String, portal: String, wait_time := 1.4) -> void: if ground: print("GroundLoader transition_to_scene: pause prev ground.") + # 先发送,再暂停,允许 sfx 等节点执行 ease out + SceneManager.ground_transition_pre_paused.emit() ground.process_mode = Node.PROCESS_MODE_DISABLED if GlobalConfig.DEBUG: # print reenter lock status diff --git a/scene/ground/scene/c01/s07_书店外.gd b/scene/ground/scene/c01/s07_书店外.gd index d8bb9e30..34965e65 100644 --- a/scene/ground/scene/c01/s07_书店外.gd +++ b/scene/ground/scene/c01/s07_书店外.gd @@ -22,6 +22,7 @@ var seller var ambush_seller: Ambush2D var bookstore_portal: Portal2D + func _on_ground_ready() -> void: luren = $"../DeployLayer/陆仁舞刀" as ProAnimatedSprite2D fog = $"../DeployLayer/portal_1/Fog" as Fog2D @@ -46,7 +47,7 @@ func _on_ground_ready() -> void: bookstore_portal.pre_transport_wait_time = 3.5 bookstore_portal.before_pre_transport_wait.connect(_knock_door) bookstore_portal.get_node("SfxEnter").stream = null - + if $"../DeployLayer/Ambush陆仁收刀".played: holdback_knife() @@ -73,14 +74,14 @@ func _knock_door(): var stream = preload("res://asset/audio/sfx/交互/序章/03_书店外黄昏_开门.wav") AudioManager.play_sfx(stream) + func _on_fog_disappear() -> void: set_data("fog_disappeared", true) # 显示标题 - $chapter_sfx.play() - var chapter_title = preload("res://asset/art/scene/c01/s02_旧版序章/f_序章标题.png") - SceneManager.pop_center_texture(chapter_title) + SceneManager.pop_chapter_notification(1) fog.tween_fog(0, Color.TRANSPARENT, Fog2D.FOG_OFFSET_DEFAULT, 15.0, true) + func seller_interacted(): bookstore_portal.holding = false # 报童交互 diff --git a/scene/ground/scene/c01/s07_书店外.tscn b/scene/ground/scene/c01/s07_书店外.tscn index 5a0e31df..748d6459 100644 --- a/scene/ground/scene/c01/s07_书店外.tscn +++ b/scene/ground/scene/c01/s07_书店外.tscn @@ -1,8 +1,7 @@ -[gd_scene load_steps=29 format=3 uid="uid://ds2iyfndwamiy"] +[gd_scene load_steps=28 format=3 uid="uid://ds2iyfndwamiy"] [ext_resource type="PackedScene" uid="uid://dayyx4jerj7io" path="res://scene/ground/ground.tscn" id="1_2vqpo"] [ext_resource type="Script" uid="uid://1bq3lbv6of1v" path="res://scene/ground/scene/c01/s07_书店外.gd" id="2_dhaq4"] -[ext_resource type="AudioStream" uid="uid://qku3yk82g364" path="res://asset/audio/sfx/交互/标题出现音效.wav" id="3_c7jb6"] [ext_resource type="Texture2D" uid="uid://bbuskt4kwkwpl" path="res://asset/art/scene/c01/s07_书店外/bg_书店外_黄昏.png" id="3_l7171"] [ext_resource type="AudioStream" uid="uid://cxwvfeuq4o71o" path="res://asset/audio/sfx/环境音/序章/03_书店外黄昏.wav" id="3_na2nu"] [ext_resource type="Texture2D" uid="uid://dklacql2hdtwv" path="res://asset/art/scene/c01/s07_书店外/e_装饰 书店外黄昏.png" id="4_8do8y"] @@ -72,6 +71,10 @@ data = { "fog_disappeared": false, "oneshot_animation_played": false } +debug_global_data = Dictionary[String, Variant]({ +"enabled_items": PackedStringArray("prop_火柴", "prop_院长的信", "prop_银元"), +"player_x": 30.0 +}) oneshot_animation = "" [node name="环境音" type="AudioStreamPlayer" parent="Ground/AnimationPlayer" index="0"] @@ -86,28 +89,21 @@ mode = "场景背景音" "感应玩家操作" = false metadata/_custom_type_script = "uid://rq6w1vuhuq1m" -[node name="chapter_sfx" type="AudioStreamPlayer" parent="Ground/AnimationPlayer" index="1"] -stream = ExtResource("3_c7jb6") -volume_db = -5.0 -bus = &"game_sfx" -script = ExtResource("4_c7jb6") -metadata/_custom_type_script = "uid://rq6w1vuhuq1m" - -[node name="报童音效" type="AudioStreamPlayer" parent="Ground/AnimationPlayer" index="2"] +[node name="报童音效" type="AudioStreamPlayer" parent="Ground/AnimationPlayer" index="1"] stream = ExtResource("5_7sdrt") volume_db = -5.0 bus = &"game_sfx" script = ExtResource("4_c7jb6") metadata/_custom_type_script = "uid://rq6w1vuhuq1m" -[node name="敲门音效" type="AudioStreamPlayer" parent="Ground/AnimationPlayer" index="3"] +[node name="敲门音效" type="AudioStreamPlayer" parent="Ground/AnimationPlayer" index="2"] stream = ExtResource("6_hwht7") volume_db = -2.0 bus = &"game_sfx" script = ExtResource("4_c7jb6") metadata/_custom_type_script = "uid://rq6w1vuhuq1m" -[node name="开门音效" type="AudioStreamPlayer" parent="Ground/AnimationPlayer" index="4"] +[node name="开门音效" type="AudioStreamPlayer" parent="Ground/AnimationPlayer" index="3"] stream = ExtResource("8_sqlmr") volume_db = -4.0 bus = &"game_sfx" @@ -186,6 +182,7 @@ position = Vector2(1045, 6) sprite_frames = ExtResource("6_thm8f") animation = &"陆仁舞刀-黄昏带红缨" autoplay = "陆仁舞刀-黄昏带红缨" +frame = 62 action_configs = Array[Dictionary]([{ "animation_intro": "陆仁收刀", &"animation_next": "陆仁收刀后呼吸", @@ -194,6 +191,7 @@ action_configs = Array[Dictionary]([{ }]) [node name="Sfx2D" type="AudioStreamPlayer2D" parent="Ground/DeployLayer/陆仁舞刀"] +process_mode = 1 stream = ExtResource("14_c7jb6") volume_db = -2.0 autoplay = true @@ -247,7 +245,6 @@ autoplay = "杂戏团黄昏_举碗小孩" [node name="Note钱碗" parent="Ground/DeployLayer/举碗小孩" instance=ExtResource("5_3pha1")] position = Vector2(6, 57) -title_filter = "c01" note_key = "c01_s07_钱碗" [node name="报童" parent="Ground/DeployLayer" index="10" instance=ExtResource("9_slaub")] @@ -255,6 +252,7 @@ position = Vector2(2080, 6) sprite_frames = ExtResource("6_thm8f") animation = &"报童待机" autoplay = "报童待机" +frame = 2 action_configs = Array[Dictionary]([{ "animation_intro": "报童给报纸", "animation_next": "报童待机", @@ -271,7 +269,6 @@ hook_method = "seller_interacted" [node name="Note橱柜" parent="Ground/DeployLayer" index="11" instance=ExtResource("5_3pha1")] position = Vector2(1681, 32) action = 5 -title_filter = "c01" note_key = "c01_s07_书店展柜" [node name="MainPlayer" parent="Ground" index="5"] diff --git a/scene/ground/scene/c01/s11_黄包车演出.gd b/scene/ground/scene/c01/s11_黄包车演出.gd index 146fedcf..1dbcd9d5 100644 --- a/scene/ground/scene/c01/s11_黄包车演出.gd +++ b/scene/ground/scene/c01/s11_黄包车演出.gd @@ -12,7 +12,6 @@ var building_y := 350.0 var title_1 = preload("uid://snm3q333tqhl") var title_2 = preload("uid://d4laekws15ap6") var title_3 = preload("uid://5oln8axxcfep") -var chapter_title = preload("uid://bvjt8iyliunfs") # 覆盖该方法 @@ -37,7 +36,6 @@ func _on_ground_ready() -> void: SceneManager.freeze_player(0) main_character = $"../DeployLayer/车夫与吕萍" footstep_sfx = $"黄包车Sfx" - chapter_sfx = $chapter_sfx # 注意第一段 dialog 在鬼差探头阶段播放 play("intro") @@ -143,12 +141,7 @@ func final_dialog(): # 展示章节转场 func _show_chapter(): - chapter_sfx.play() - SceneManager.pop_center_texture(chapter_title) - Util.timer(3.5, _transition) - - -func _transition(): + await SceneManager.pop_chapter_notification(2) # 转场前停止背景音乐 AudioManager.stop_bgm_music("黄包车背景音效") SceneManager.get_ground_loader().transition_to_scene("c02_s01", "left") diff --git a/scene/ground/scene/c01/s11_黄包车演出.tscn b/scene/ground/scene/c01/s11_黄包车演出.tscn index 53ff55dd..8065078b 100644 --- a/scene/ground/scene/c01/s11_黄包车演出.tscn +++ b/scene/ground/scene/c01/s11_黄包车演出.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=33 format=3 uid="uid://coiumaaenimbc"] +[gd_scene load_steps=32 format=3 uid="uid://coiumaaenimbc"] [ext_resource type="PackedScene" uid="uid://dayyx4jerj7io" path="res://scene/ground/ground.tscn" id="1_1sveo"] [ext_resource type="Script" uid="uid://dcn7u7v3fsscj" path="res://scene/ground/scene/c01/s11_黄包车演出.gd" id="2_espm6"] @@ -7,7 +7,6 @@ [ext_resource type="AudioStream" uid="uid://qu38tv548jhj" path="res://asset/audio/sfx/旧版/c01/拉黄包车_loop.wav" id="3_ummkx"] [ext_resource type="Script" uid="uid://rq6w1vuhuq1m" path="res://scene/entity/audio/sfx.gd" id="3_vx53v"] [ext_resource type="Texture2D" uid="uid://qbwh5si2owve" path="res://asset/art/scene/c01/s04_旧版序章/fg_前景3.png" id="4_1flr0"] -[ext_resource type="AudioStream" uid="uid://qku3yk82g364" path="res://asset/audio/sfx/交互/标题出现音效.wav" id="5_amglq"] [ext_resource type="PackedScene" uid="uid://bnf3lkcbpx1ar" path="res://scene/entity/ambush.tscn" id="6_3k8jj"] [ext_resource type="AudioStream" uid="uid://b8rg7adnnkjll" path="res://asset/audio/BGM/戏曲声.wav" id="6_68ynl"] [ext_resource type="SpriteFrames" uid="uid://bk54qlc8dr5xr" path="res://asset/art/gif/c01_黄包车长场景/c01_黄包车长场景_frames.tres" id="7_wo6md"] @@ -166,13 +165,7 @@ volume_db = -7.924 bus = &"game_sfx" script = ExtResource("3_vx53v") -[node name="chapter_sfx" type="AudioStreamPlayer" parent="Ground/AnimationPlayer" index="1"] -stream = ExtResource("5_amglq") -volume_db = -5.0 -bus = &"game_sfx" -script = ExtResource("3_vx53v") - -[node name="黄包车背景音效" type="AudioStreamPlayer" parent="Ground/AnimationPlayer" index="2"] +[node name="黄包车背景音效" type="AudioStreamPlayer" parent="Ground/AnimationPlayer" index="1"] stream = SubResource("AudioStreamSynchronized_s11la") autoplay = true bus = &"game_sfx" diff --git a/scene/ground/scene/c02/s03_院子.tscn b/scene/ground/scene/c02/s03_院子.tscn index 70dbdc5f..26093868 100644 --- a/scene/ground/scene/c02/s03_院子.tscn +++ b/scene/ground/scene/c02/s03_院子.tscn @@ -428,6 +428,7 @@ position = Vector2(953, 42) sprite_frames = ExtResource("11_o1qbs") animation = &"c00_头套小婵_run" autoplay = "c00_头套小婵_idle" +frame = 5 move_configs = Array[Dictionary]([{ "animation": "c00_头套小婵_run", "animation_next": "", @@ -781,8 +782,7 @@ position = Vector2(29, -3) sprite_frames = ExtResource("34_1tart") animation = &"小婵_被霸凌" autoplay = "小婵_被霸凌" -frame = 5 -frame_progress = 0.248369 +frame = 2 [node name="f1" parent="Ground/DeployLayer/霸凌" instance=ExtResource("33_ycojw")] z_index = 10 @@ -790,6 +790,7 @@ position = Vector2(-11, 1) sprite_frames = ExtResource("34_1tart") animation = &"霸凌1" autoplay = "霸凌1" +frame = 4 [node name="Sfx2D霸凌童谣" type="AudioStreamPlayer2D" parent="Ground/DeployLayer/霸凌/f1"] process_mode = 1 @@ -807,6 +808,7 @@ position = Vector2(23, 11) sprite_frames = ExtResource("34_1tart") animation = &"霸凌2" autoplay = "霸凌2" +frame = 1 [node name="f3" parent="Ground/DeployLayer/霸凌" instance=ExtResource("33_ycojw")] z_index = 10 @@ -814,6 +816,7 @@ position = Vector2(57, 7) sprite_frames = ExtResource("34_1tart") animation = &"霸凌3" autoplay = "霸凌3" +frame = 9 [node name="Ambush点火游戏阻挡右移" parent="Ground/DeployLayer/霸凌" instance=ExtResource("25_iyaiw")] position = Vector2(-116, -13) @@ -1002,6 +1005,7 @@ position = Vector2(2229, 41) sprite_frames = ExtResource("34_1tart") animation = &"霸凌3-发抖" autoplay = "霸凌3-发抖" +frame = 1 [node name="Pro小孩喊着火啦3" parent="Ground/DeployLayer/火灾" instance=ExtResource("33_ycojw")] z_index = 9 @@ -1060,6 +1064,7 @@ z_index = 5 position = Vector2(17, -11) sprite_frames = ExtResource("39_rnk1v") animation = &"吕萍牵手动作" +frame = 5 [node name="CollisionShape2D" type="CollisionShape2D" parent="Ground/DeployLayer/火灾/牵手跑"] shape = SubResource("RectangleShape2D_vddfx") diff --git a/scene/ground/scene/c02/s06_二楼.gd b/scene/ground/scene/c02/s06_二楼.gd index 214ef07f..33d3b91d 100644 --- a/scene/ground/scene/c02/s06_二楼.gd +++ b/scene/ground/scene/c02/s06_二楼.gd @@ -22,10 +22,14 @@ var c02_final_layer func _on_ground_ready() -> void: c02_final_layer = $"../DeployLayer/c02_final" + if EventManager.get_stage("c02_burning_end_stage") > 0: + # 进入收尾阶段时,隐藏杂物堆,增加传送 + $"../DeployLayer/Note楼梯杂物堆".queue_free() + $"../DeployLayer/portal_3".enabled = true + if ( - ArchiveManager.get_global_value(&"c02_burning") # 1: 牵手跑结束; 2: 谢幕演出结束 - and EventManager.get_stage(&"c02_burning_end_stage") == 1 + EventManager.get_stage(&"c02_burning_end_stage") == 1 ): # 禁止再回到瞎子卧室 ArchiveManager.set_global_entry(&"c02_the_blind_room_unlocked", false) @@ -141,7 +145,7 @@ func _c02_final_show(): player.set_facing_direction(Vector2(-1, 0)) player.global_position.x = 650 player.visible = false - SceneManager.freeze_player(0) + SceneManager.lock_player() # 整体流程:c02_final_show_join - 特写 - c02_final_show_end # test_end: 仅测试特写技术的后半段 var test_end = false @@ -172,13 +176,33 @@ func _on_exit_final_show(_arg): $"../DeployLayer/c02_final/瞎子/Sfx2D脚步声".play() await animation_finished c02_final_layer.queue_free() - SceneManager.release_player() + + await Util.wait(0.5) + + # 小蝉上楼后开启第二章 + var xxdie = $"../DeployLayer/Pro小小蝶上楼" as AnimatedSprite2D + xxdie.play("小小小蝶动画(跑)") + #跑 + await xxdie.animation_changed + SceneManager.get_player().set_facing_direction(Vector2.RIGHT) + SceneManager.pop_os_with_str("c02_看到小蝉上楼") + var tween = create_tween() + tween.tween_property(xxdie, "modulate:a", 0.0, 1.5) + tween.tween_callback(xxdie.queue_free) + #上楼 + await xxdie.animation_finished + await Util.wait(2.0) + await SceneManager.pop_os_with_str("c02_看到杂物堆消失") + await Util.wait(1.0) # 1: 牵手跑结束; 2: 谢幕演出结束 EventManager.set_stage(&"c02_burning_end_stage", 2) - # TODO 小蝉上楼后开启第二章 + # 更新章节后放在最后(目前没有记笔记动作,以后或许添加) ArchiveManager.set_chapter_if_greater(3) + await SceneManager.pop_chapter_notification(3) + SceneManager.unlock_player() + func unlock_2floor_map(): EventManager.set_stage_if_greater(&"c02_2f_xchan_run_away", 1) EventManager.set_stage_if_greater(&"handnote_c02_map_2", 1) - EventManager.set_stage_if_greater(&"handnote_c02_shoe_giveToMouce", 1) \ No newline at end of file + EventManager.set_stage_if_greater(&"handnote_c02_shoe_giveToMouce", 1) diff --git a/scene/ground/scene/c02/s06_二楼.tscn b/scene/ground/scene/c02/s06_二楼.tscn index e8fd4aef..1468ecc6 100644 --- a/scene/ground/scene/c02/s06_二楼.tscn +++ b/scene/ground/scene/c02/s06_二楼.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=55 format=3 uid="uid://cootarwb44vvh"] +[gd_scene load_steps=62 format=3 uid="uid://cootarwb44vvh"] [ext_resource type="PackedScene" uid="uid://dayyx4jerj7io" path="res://scene/ground/ground.tscn" id="1_qkymk"] [ext_resource type="Script" uid="uid://cbt0ubygchxvv" path="res://scene/ground/scene/c02/s06_二楼.gd" id="2_4dg6u"] @@ -16,11 +16,14 @@ [ext_resource type="Texture2D" uid="uid://b7uo33bdiwpl3" path="res://asset/art/scene/c02/s03_公寓一楼院子/地面物品反光/地反光4.png" id="8_7x2h6"] [ext_resource type="SpriteFrames" uid="uid://blij4obvhb1vf" path="res://asset/art/gif/c02_公寓过道/c02_公寓过道_frames.tres" id="8_nh8we"] [ext_resource type="PackedScene" uid="uid://8frowlq301" path="res://scene/ground/script/c02/s00_跟随的老鼠.tscn" id="9_58d45"] +[ext_resource type="Texture2D" uid="uid://bp84w8keuelyj" path="res://asset/art/scene/c02/s10_空房间/e_蜡烛-sheet.png" id="10_6iuix"] [ext_resource type="PackedScene" uid="uid://jr1yd46wm5je" path="res://scene/entity/note.tscn" id="10_h3h1a"] [ext_resource type="SpriteFrames" uid="uid://c8dl7c68f1yb0" path="res://asset/art/gif/c02_二楼/c02_二楼_frames.tres" id="10_och2w"] [ext_resource type="PackedScene" uid="uid://b50n0hvs4yh75" path="res://addons/property-inspector/pro_animation_sprite2d/pro_animated_sprite.tscn" id="10_p6da7"] +[ext_resource type="Texture2D" uid="uid://cylsq5cvhlp18" path="res://asset/art/tool/point_light.png" id="11_2rktm"] [ext_resource type="PackedScene" uid="uid://dqkxiqbq83cmq" path="res://scene/entity/closeup.tscn" id="11_owxx3"] [ext_resource type="PackedScene" uid="uid://cjx7o685ox8c1" path="res://scene/little_game/弹珠游戏/弹珠游戏.tscn" id="12_intre"] +[ext_resource type="SpriteFrames" uid="uid://c218xrr85jdc7" path="res://asset/art/gif/c03_小小小蝶上楼道/c03_小小小蝶上楼道_frames.tres" id="13_6iuix"] [ext_resource type="Script" uid="uid://wapo47a1oddf" path="res://scene/entity/audio/sfx2d.gd" id="14_7x2h6"] [ext_resource type="PackedScene" uid="uid://bnf3lkcbpx1ar" path="res://scene/entity/ambush.tscn" id="14_k01ve"] [ext_resource type="SpriteFrames" uid="uid://3nas025c2c5u" path="res://asset/art/gif/c02_杂项/c02_杂项_frames.tres" id="14_och2w"] @@ -30,7 +33,6 @@ [ext_resource type="AudioStream" uid="uid://fc7ocwfmtjyb" path="res://asset/audio/sfx/交互/第一章/sfx_撞墙1.wav" id="17_4lf48"] [ext_resource type="AudioStream" uid="uid://cw6ho7gklq2sa" path="res://asset/audio/sfx/交互/第一章/sfx_撞墙2.wav" id="18_m28ab"] [ext_resource type="Texture2D" uid="uid://0x7cl2cmcs6l" path="res://asset/art/scene/c02/s03_公寓一楼院子/光晕/光晕2.png" id="18_rjlld"] -[ext_resource type="SpriteFrames" uid="uid://by3207ou8ph7" path="res://asset/art/gif/c03_小小小蝶上楼道/c02_小小小蝶上楼道_frames.tres" id="23_2e08x"] [ext_resource type="PackedScene" uid="uid://bait5vh6jhmss" path="res://scene/ground/script/c02/谢幕演出.tscn" id="25_m28ab"] [ext_resource type="AudioStream" uid="uid://bxp3f263aaqkp" path="res://asset/audio/sfx/脚步/02_室外_1.wav" id="29_tqnu8"] [ext_resource type="AudioStream" uid="uid://d3h0xe0qtai18" path="res://asset/audio/sfx/脚步/02_室外_2.wav" id="30_r7b2r"] @@ -335,7 +337,7 @@ tracks/23/keys = { [sub_resource type="Animation" id="Animation_lh55k"] resource_name = "c02_final_show_end" -length = 14.0 +length = 12.0 capture_included = true tracks/0/type = "value" tracks/0/imported = false @@ -796,6 +798,42 @@ _data = { &"疯子撞墙": SubResource("Animation_p6da7") } +[sub_resource type="AtlasTexture" id="AtlasTexture_chbaa"] +atlas = ExtResource("10_6iuix") +region = Rect2(0, 0, 6, 14) + +[sub_resource type="AtlasTexture" id="AtlasTexture_th1ek"] +atlas = ExtResource("10_6iuix") +region = Rect2(6, 0, 6, 14) + +[sub_resource type="AtlasTexture" id="AtlasTexture_to1d1"] +atlas = ExtResource("10_6iuix") +region = Rect2(12, 0, 6, 14) + +[sub_resource type="AtlasTexture" id="AtlasTexture_nx6jy"] +atlas = ExtResource("10_6iuix") +region = Rect2(18, 0, 6, 14) + +[sub_resource type="SpriteFrames" id="SpriteFrames_lipxo"] +animations = [{ +"frames": [{ +"duration": 3.0, +"texture": SubResource("AtlasTexture_chbaa") +}, { +"duration": 3.0, +"texture": SubResource("AtlasTexture_th1ek") +}, { +"duration": 3.0, +"texture": SubResource("AtlasTexture_to1d1") +}, { +"duration": 3.0, +"texture": SubResource("AtlasTexture_nx6jy") +}], +"loop": true, +"name": &"default", +"speed": 10.0 +}] + [sub_resource type="RectangleShape2D" id="RectangleShape2D_lh55k"] resource_local_to_scene = true size = Vector2(20, 70) @@ -960,22 +998,80 @@ portal_name = "2" target_scene = "c03_s01" prop_key = "prop_2014钥匙" -[node name="楼道杂物堆" type="Sprite2D" parent="Ground/DeployLayer" index="4"] -position = Vector2(802, -76) -texture = ExtResource("7_v3hjg") +[node name="portal_3" parent="Ground/DeployLayer" index="4" instance=ExtResource("4_haidv")] +position = Vector2(798, 17) +debug_note = "上三楼" +enabled = false +portal_name = "3" +target_scene = "c03_s01" +target_portal = "right" +prop_key = "prop_2014钥匙" -[node name="Note楼梯杂物堆" parent="Ground/DeployLayer" index="5" instance=ExtResource("10_h3h1a")] -position = Vector2(801, 46) -sign_mark_offset = Vector2(0, -100) -title_filter = "c02" -note_key = "c02_二楼楼梯杂物堆" +[node name="楼梯蜡烛" type="Node2D" parent="Ground/DeployLayer" index="5"] -[node name="Pro小蝉上楼" parent="Ground/DeployLayer" index="6" instance=ExtResource("10_p6da7")] -visible = false -position = Vector2(646, 63) -sprite_frames = ExtResource("23_2e08x") -animation = &"小小小蝶动画(呼吸)" +[node name="小蜡烛" type="AnimatedSprite2D" parent="Ground/DeployLayer/楼梯蜡烛"] +self_modulate = Color(0.611765, 0.611765, 0.611765, 1) +position = Vector2(777.8, -35.3828) +sprite_frames = SubResource("SpriteFrames_lipxo") +autoplay = "default" + +[node name="小蜡烛PointLight2D" type="PointLight2D" parent="Ground/DeployLayer/楼梯蜡烛/小蜡烛"] +position = Vector2(0, -12.8172) +color = Color(0.999971, 0.912551, 0.842208, 1) +energy = 1.2 +blend_mode = 2 +texture = ExtResource("11_2rktm") +texture_scale = 0.3 + +[node name="小蜡烛2" type="AnimatedSprite2D" parent="Ground/DeployLayer/楼梯蜡烛"] +self_modulate = Color(0.611765, 0.611765, 0.611765, 1) +position = Vector2(823, -6) +sprite_frames = SubResource("SpriteFrames_lipxo") +autoplay = "default" + +[node name="小蜡烛PointLight2D" type="PointLight2D" parent="Ground/DeployLayer/楼梯蜡烛/小蜡烛2"] +position = Vector2(0, -12.8172) +color = Color(0.999971, 0.912551, 0.842208, 1) +energy = 1.2 +blend_mode = 2 +texture = ExtResource("11_2rktm") +texture_scale = 0.3 + +[node name="小蜡烛3" type="AnimatedSprite2D" parent="Ground/DeployLayer/楼梯蜡烛"] +self_modulate = Color(0.611765, 0.611765, 0.611765, 1) +position = Vector2(774, 3) +sprite_frames = SubResource("SpriteFrames_lipxo") +autoplay = "default" + +[node name="小蜡烛PointLight2D" type="PointLight2D" parent="Ground/DeployLayer/楼梯蜡烛/小蜡烛3"] +position = Vector2(0, -12.8172) +color = Color(0.999971, 0.912551, 0.842208, 1) +energy = 1.2 +blend_mode = 2 +texture = ExtResource("11_2rktm") +texture_scale = 0.3 + +[node name="小蜡烛4" type="AnimatedSprite2D" parent="Ground/DeployLayer/楼梯蜡烛"] +self_modulate = Color(0.611765, 0.611765, 0.611765, 1) +position = Vector2(824, 56) +sprite_frames = SubResource("SpriteFrames_lipxo") +autoplay = "default" + +[node name="小蜡烛PointLight2D" type="PointLight2D" parent="Ground/DeployLayer/楼梯蜡烛/小蜡烛4"] +position = Vector2(0, -12.8172) +color = Color(0.999971, 0.912551, 0.842208, 1) +energy = 1.2 +blend_mode = 2 +texture = ExtResource("11_2rktm") +texture_scale = 0.3 + +[node name="Pro小小蝶上楼" parent="Ground/DeployLayer" index="6" instance=ExtResource("10_p6da7")] +position = Vector2(953, 30) +sprite_frames = ExtResource("13_6iuix") +animation = &"小小小蝶动画(跑)" autoplay = "小小小蝶动画(呼吸)" +frame = 2 +flip_h = true move_configs = Array[Dictionary]([{ "animation": "小小小蝶动画(跑)", "animation_next": "小小小蝶动画(上楼梯)", @@ -985,7 +1081,14 @@ move_configs = Array[Dictionary]([{ }]) debug_mov_animation = "小小小蝶动画(跑)" -[node name="煤油灯" parent="Ground/DeployLayer" index="7" instance=ExtResource("5_3p5ta")] +[node name="Note楼梯杂物堆" parent="Ground/DeployLayer" index="7" instance=ExtResource("10_h3h1a")] +position = Vector2(801, -77) +texture = ExtResource("7_v3hjg") +sign_mark_offset = Vector2(0, 12.34) +title_filter = "c02" +note_key = "c02_二楼楼梯杂物堆" + +[node name="煤油灯" parent="Ground/DeployLayer" index="8" instance=ExtResource("5_3p5ta")] position = Vector2(616, -14) ground_light_texture = ExtResource("8_7x2h6") ground_height_offset = 15.0 @@ -997,7 +1100,7 @@ shape = SubResource("RectangleShape2D_lh55k") position = Vector2(0, 15) texture = ExtResource("8_7x2h6") -[node name="煤油灯2" type="Sprite2D" parent="Ground/DeployLayer" index="8"] +[node name="煤油灯2" type="Sprite2D" parent="Ground/DeployLayer" index="9"] position = Vector2(321, 1) texture = ExtResource("16_osg51") @@ -1015,7 +1118,7 @@ energy = 2.0 blend_mode = 2 texture = ExtResource("18_rjlld") -[node name="Interactable老鼠洞" parent="Ground/DeployLayer" index="9" instance=ExtResource("7_0d746")] +[node name="Interactable老鼠洞" parent="Ground/DeployLayer" index="10" instance=ExtResource("7_0d746")] position = Vector2(618, 50) enabled = false one_shot_max_times = 2 @@ -1030,19 +1133,19 @@ shape = SubResource("RectangleShape2D_7kxvk") radius = 20.0 walk_to_edge = true -[node name="小老鼠拖鞋子" type="AnimatedSprite2D" parent="Ground/DeployLayer" index="10"] +[node name="小老鼠拖鞋子" type="AnimatedSprite2D" parent="Ground/DeployLayer" index="11"] visible = false position = Vector2(608, -15) sprite_frames = ExtResource("8_nh8we") animation = &"老鼠托小鞋子" speed_scale = -1.0 -[node name="自动跟随的老鼠" parent="Ground/DeployLayer" index="11" instance=ExtResource("9_58d45")] +[node name="自动跟随的老鼠" parent="Ground/DeployLayer" index="12" instance=ExtResource("9_58d45")] position = Vector2(4, 73) action_area = Vector2(920, 40) distance_to_player_range = Vector2(20, 150) -[node name="疯子撞墙" parent="Ground/DeployLayer" index="12" instance=ExtResource("10_p6da7")] +[node name="疯子撞墙" parent="Ground/DeployLayer" index="13" instance=ExtResource("10_p6da7")] visible = false position = Vector2(221, 4) sprite_frames = ExtResource("10_och2w") @@ -1068,7 +1171,7 @@ loop = true loop_round_time = 0.8 metadata/_custom_type_script = "uid://wapo47a1oddf" -[node name="Ambush三男孩" parent="Ground/DeployLayer" index="13" instance=ExtResource("14_k01ve")] +[node name="Ambush三男孩" parent="Ground/DeployLayer" index="14" instance=ExtResource("14_k01ve")] visible = false position = Vector2(167, 38) enabled = false @@ -1085,23 +1188,23 @@ autoplay = "f3" frame = 6 frame_progress = 0.121203 -[node name="Closeup弹珠游戏" parent="Ground/DeployLayer" index="14" instance=ExtResource("11_owxx3")] +[node name="Closeup弹珠游戏" parent="Ground/DeployLayer" index="15" instance=ExtResource("11_owxx3")] position = Vector2(322, -269) packed_scene = ExtResource("12_intre") quit_closeup_on_escape = false -[node name="Closeup水盆" parent="Ground/DeployLayer" index="15" instance=ExtResource("11_owxx3")] +[node name="Closeup水盆" parent="Ground/DeployLayer" index="16" instance=ExtResource("11_owxx3")] position = Vector2(289, 16) packed_scene = ExtResource("16_p6da7") first_interact_os_key = "c02_二楼水盆" -[node name="Closeup谢幕演出" parent="Ground/DeployLayer" index="16" instance=ExtResource("11_owxx3")] +[node name="Closeup谢幕演出" parent="Ground/DeployLayer" index="17" instance=ExtResource("11_owxx3")] position = Vector2(518, -272) packed_scene = ExtResource("25_m28ab") quit_closeup_on_escape = false action_key = 3 -[node name="c02_final" type="Node2D" parent="Ground/DeployLayer" index="17"] +[node name="c02_final" type="Node2D" parent="Ground/DeployLayer" index="18"] visible = false [node name="胖子" parent="Ground/DeployLayer/c02_final" instance=ExtResource("10_p6da7")] @@ -1204,13 +1307,13 @@ color = Color(0.895506, 0.638359, 0.208885, 1) energy = 0.0 texture = SubResource("GradientTexture2D_h3h1a") -[node name="Ambush小蝉偷看" parent="Ground/DeployLayer" index="18" instance=ExtResource("14_k01ve")] +[node name="Ambush小蝉偷看" parent="Ground/DeployLayer" index="19" instance=ExtResource("14_k01ve")] position = Vector2(553, -5) texture = ExtResource("37_osg51") collision_width_and_x = Vector2(150, 0) hook_method = "glimpse_hide_out" -[node name="Event_小猫纸条" type="Node2D" parent="Ground/DeployLayer" index="19"] +[node name="Event_小猫纸条" type="Node2D" parent="Ground/DeployLayer" index="20"] position = Vector2(164, 42) script = ExtResource("35_h3h1a") event = &"c02_ball_game_stage" @@ -1230,11 +1333,11 @@ content_centered = true texture_cover = ExtResource("37_rjlld") content_key = "c02_小猫纸条" -[node name="Ambush解锁二楼地图" parent="Ground/DeployLayer" index="20" instance=ExtResource("14_k01ve")] +[node name="Ambush解锁二楼地图" parent="Ground/DeployLayer" index="21" instance=ExtResource("14_k01ve")] position = Vector2(748, 47) hook_method = "unlock_2floor_map" -[node name="Event2D_xchan_run_away" type="Node2D" parent="Ground/DeployLayer" index="21"] +[node name="Event2D_xchan_run_away" type="Node2D" parent="Ground/DeployLayer" index="22"] position = Vector2(9, -4) script = ExtResource("39_t5e0j") event = &"c02_2f_xchan_run_away" @@ -1253,6 +1356,8 @@ autoplay = "c00_头套小婵_idle" flip_h = true move_configs = Array[Dictionary]([{ "animation": "c00_头套小婵_run", +"animation_next": "", +"duration": 1e+07, "movement_x": 600.0, "velocity": Vector2(100, 0) }]) @@ -1272,7 +1377,6 @@ texture = ExtResource("5_26mqt") points = PackedVector2Array(26, 150, 900, 150) [node name="DirectionalLight2D" parent="Ground" index="8"] -visible = false energy = 0.9 blend_mode = 1 diff --git a/scene/ground/scene/c02/s10_空房间.gd b/scene/ground/scene/c02/s10_空房间.gd index bdb51f40..e380c618 100644 --- a/scene/ground/scene/c02/s10_空房间.gd +++ b/scene/ground/scene/c02/s10_空房间.gd @@ -92,7 +92,7 @@ func _on_ground_ready() -> void: func first_enter_ambush(): - SceneManager.freeze_player(0) + SceneManager.freeze_player() xiao_chan_sprite.modulate.a = 0 SceneManager.pop_debug_dialog_info("美术", "第一次进入房间,蔓延的血脚印") var sprite = $"../DeployLayer/血脚印" as AnimatedSprite2D @@ -141,13 +141,14 @@ func _on_leave_room(): var pushing_counter = false: set(value): - pushing_counter = value - if GlobalConfig.DEBUG: - print("pushing_counter:", pushing_counter) + if pushing_counter != value: + pushing_counter = value + if GlobalConfig.DEBUG: + print("pushing_counter:", pushing_counter) + var counter_pushed_out = false var walking = false - func _on_counter_interacted(): var player = SceneManager.get_player() as MainPlayer if pushing_counter: @@ -180,7 +181,7 @@ func on_player_moved_counter(global_pos: Vector2): after_counter_moved() -func _unhandled_input(event: InputEvent) -> void: +func _input(event: InputEvent) -> void: if event.is_action_pressed("cancel") and not walking and pushing_counter: get_viewport().set_input_as_handled() _on_counter_interacted() diff --git a/scene/ground/scene/c02/s10_空房间.tscn b/scene/ground/scene/c02/s10_空房间.tscn index 07b50094..998632df 100644 --- a/scene/ground/scene/c02/s10_空房间.tscn +++ b/scene/ground/scene/c02/s10_空房间.tscn @@ -22,7 +22,7 @@ [ext_resource type="SpriteFrames" uid="uid://cwes55ajc3rd4" path="res://asset/art/gif/c02_空房间/c02_空房间_frames.tres" id="15_2j5dr"] [ext_resource type="Texture2D" uid="uid://cylsq5cvhlp18" path="res://asset/art/tool/point_light.png" id="15_e24j0"] [ext_resource type="Texture2D" uid="uid://bp84w8keuelyj" path="res://asset/art/scene/c02/s10_空房间/e_蜡烛-sheet.png" id="15_kqj5r"] -[ext_resource type="Texture2D" uid="uid://o5uouajglukh" path="res://asset/art/gif/c02_空房间/e_小蝉头套.png" id="18_3kyh4"] +[ext_resource type="Texture2D" uid="uid://o5uouajglukh" path="res://asset/art/scene/c02/s10_空房间/e_小蝉头套.png" id="18_3kyh4"] [ext_resource type="PackedScene" uid="uid://bffqprfmpt0bx" path="res://scene/ground/script/c02/空房间小蝉头套.tscn" id="18_5t4pt"] [ext_resource type="PackedScene" uid="uid://dqkxiqbq83cmq" path="res://scene/entity/closeup.tscn" id="18_8cwaw"] [ext_resource type="PackedScene" uid="uid://decfqoe5v0y6n" path="res://scene/effect/dizzy_shader.tscn" id="26_3kyh4"] diff --git a/scene/ground/scene/c03/s01_瞎子理发店.gd b/scene/ground/scene/c03/s01_三楼.gd similarity index 66% rename from scene/ground/scene/c03/s01_瞎子理发店.gd rename to scene/ground/scene/c03/s01_三楼.gd index 68319f6f..21463fc3 100644 --- a/scene/ground/scene/c03/s01_瞎子理发店.gd +++ b/scene/ground/scene/c03/s01_三楼.gd @@ -13,5 +13,14 @@ func _ready() -> void: return +#region node_reference +#endregion + + +# 读取设置变量名 +func _setup_node_reference() -> void: + pass + + func _on_ground_ready() -> void: pass diff --git a/scene/ground/scene/c03/s01_三楼.gd.uid b/scene/ground/scene/c03/s01_三楼.gd.uid new file mode 100644 index 00000000..217878e7 --- /dev/null +++ b/scene/ground/scene/c03/s01_三楼.gd.uid @@ -0,0 +1 @@ +uid://c0rh2n36ait6i diff --git a/scene/ground/scene/c03/s01_瞎子理发店.tscn b/scene/ground/scene/c03/s01_三楼.tscn similarity index 88% rename from scene/ground/scene/c03/s01_瞎子理发店.tscn rename to scene/ground/scene/c03/s01_三楼.tscn index 876e09e0..bb4c1e34 100644 --- a/scene/ground/scene/c03/s01_瞎子理发店.tscn +++ b/scene/ground/scene/c03/s01_三楼.tscn @@ -1,10 +1,10 @@ [gd_scene load_steps=10 format=3 uid="uid://dlrbhfvnd3cs0"] [ext_resource type="PackedScene" uid="uid://dayyx4jerj7io" path="res://scene/ground/ground.tscn" id="1_eb2op"] -[ext_resource type="Script" uid="uid://cim5bqm2nayls" path="res://scene/ground/scene/c03/s01_瞎子理发店.gd" id="2_jxanq"] +[ext_resource type="Script" uid="uid://c0rh2n36ait6i" path="res://scene/ground/scene/c03/s01_三楼.gd" id="2_ow08b"] [ext_resource type="Script" uid="uid://cpejxlfni6n52" path="res://manager/audio_manager/vibe_sfx.gd" id="3_lb1oo"] -[ext_resource type="Texture2D" uid="uid://6ol2om68cd1q" path="res://asset/art/scene/c02/s06_二楼楼道/bg_背景.png" id="7_tfw8r"] -[ext_resource type="Texture2D" uid="uid://crev0svowqla" path="res://asset/art/scene/c02/s06_二楼楼道/fg_前景.png" id="24_oel41"] +[ext_resource type="Texture2D" uid="uid://cpjd3dqri51fq" path="res://asset/art/scene/c03/s01_三楼/bg_三楼走廊.png" id="4_ow08b"] +[ext_resource type="Texture2D" uid="uid://djoft6600kly6" path="res://asset/art/scene/c03/s01_三楼/fg_前景.png" id="5_ow08b"] [sub_resource type="Animation" id="Animation_k01ve"] length = 0.001 @@ -118,7 +118,7 @@ player_y = 60 libraries = { &"": SubResource("AnimationLibrary_k01ve") } -script = ExtResource("2_jxanq") +script = ExtResource("2_ow08b") debug_global_data = Dictionary[String, Variant]({ "enabled_items": ["prop_火柴", "prop_院长的信", "prop_银元"] }) @@ -132,7 +132,7 @@ metadata/_custom_type_script = "uid://cpejxlfni6n52" [node name="BGSprite2D" parent="Ground" index="2"] light_mask = 5 position = Vector2(0, -2) -texture = ExtResource("7_tfw8r") +texture = ExtResource("4_ow08b") [node name="portal_left" parent="Ground/DeployLayer" index="0"] position = Vector2(34, 8) @@ -140,7 +140,9 @@ target_scene = "c02_s07" target_portal = "1" [node name="portal_right" parent="Ground/DeployLayer" index="1"] -position = Vector2(873, 15) +position = Vector2(697, 18) +target_scene = "c02_s06" +target_portal = "right" [node name="MainPlayer" parent="Ground" index="5"] position = Vector2(63, 95) @@ -150,7 +152,7 @@ facing_direction = Vector2(1, 0) [node name="FGSprite2D" parent="Ground/ParallaxForeground/FGParallaxLayer" index="0"] position = Vector2(0, -5) scale = Vector2(1.1, 1.1) -texture = ExtResource("24_oel41") +texture = ExtResource("5_ow08b") [node name="PlayerLine2D" parent="Ground/ParallaxForeground" index="2"] points = PackedVector2Array(26, 150, 900, 150) diff --git a/scene/ground/scene/c03/s02_三楼内侧.gd b/scene/ground/scene/c03/s02_三楼内侧.gd new file mode 100644 index 00000000..21463fc3 --- /dev/null +++ b/scene/ground/scene/c03/s02_三楼内侧.gd @@ -0,0 +1,26 @@ +@tool +extends AnimationRoot + + +# 覆盖该方法 +func _default_data() -> Dictionary: + return {} + + +func _ready() -> void: + super._ready() + if Engine.is_editor_hint(): + return + + +#region node_reference +#endregion + + +# 读取设置变量名 +func _setup_node_reference() -> void: + pass + + +func _on_ground_ready() -> void: + pass diff --git a/scene/ground/scene/c03/s02_三楼内侧.gd.uid b/scene/ground/scene/c03/s02_三楼内侧.gd.uid new file mode 100644 index 00000000..845241e3 --- /dev/null +++ b/scene/ground/scene/c03/s02_三楼内侧.gd.uid @@ -0,0 +1 @@ +uid://cp6kf8nqcakff diff --git a/scene/ground/scene/c03/s02_三楼内侧.tscn b/scene/ground/scene/c03/s02_三楼内侧.tscn new file mode 100644 index 00000000..fa75c0c4 --- /dev/null +++ b/scene/ground/scene/c03/s02_三楼内侧.tscn @@ -0,0 +1,163 @@ +[gd_scene load_steps=10 format=3 uid="uid://rkro7u5wd3t1"] + +[ext_resource type="PackedScene" uid="uid://dayyx4jerj7io" path="res://scene/ground/ground.tscn" id="1_3pvs8"] +[ext_resource type="Script" uid="uid://cp6kf8nqcakff" path="res://scene/ground/scene/c03/s02_三楼内侧.gd" id="2_3pvs8"] +[ext_resource type="Script" uid="uid://cpejxlfni6n52" path="res://manager/audio_manager/vibe_sfx.gd" id="3_a2vck"] +[ext_resource type="Texture2D" uid="uid://6ol2om68cd1q" path="res://asset/art/scene/c02/s06_二楼楼道/bg_背景.png" id="4_44hjs"] +[ext_resource type="Texture2D" uid="uid://crev0svowqla" path="res://asset/art/scene/c02/s06_二楼楼道/fg_前景.png" id="5_igke8"] + +[sub_resource type="Animation" id="Animation_k01ve"] +length = 0.001 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("DirectionalLight2D:energy") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [0.9] +} +tracks/1/type = "value" +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/path = NodePath("MainPlayer:hide_sprite") +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("MainPlayer:visible") +tracks/2/interp = 1 +tracks/2/loop_wrap = true +tracks/2/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 1, +"values": [true] +} + +[sub_resource type="Animation" id="Animation_lh55k"] +resource_name = "c02_final_show_end" +length = 14.0 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("MainPlayer:hide_sprite") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0, 3.8), +"transitions": PackedFloat32Array(1, 1), +"update": 1, +"values": [true, false] +} +tracks/1/type = "value" +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/path = NodePath("MainPlayer:visible") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 1, +"values": [true] +} + +[sub_resource type="Animation" id="Animation_ciatp"] +resource_name = "c02_final_show_join" +length = 12.5 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("DirectionalLight2D:energy") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0, 12.1, 12.5), +"transitions": PackedFloat32Array(1, 1, 1), +"update": 0, +"values": [1.0, 1.0, 0.9] +} +tracks/1/type = "value" +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/path = NodePath("MainPlayer:visible") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 1, +"values": [false] +} + +[sub_resource type="AnimationLibrary" id="AnimationLibrary_k01ve"] +_data = { +&"RESET": SubResource("Animation_k01ve"), +&"c02_final_show_end": SubResource("Animation_lh55k"), +&"c02_final_show_join": SubResource("Animation_ciatp") +} + +[node name="S02" type="Node2D"] + +[node name="Ground" parent="." instance=ExtResource("1_3pvs8")] +scene_name = "c03_s02" +player_y = 60 + +[node name="AnimationPlayer" parent="Ground" index="0"] +libraries = { +&"": SubResource("AnimationLibrary_k01ve") +} +script = ExtResource("2_3pvs8") +debug_global_data = Dictionary[String, Variant]({ +"enabled_items": ["prop_火柴", "prop_院长的信", "prop_银元"] +}) +oneshot_animation = "" + +[node name="VibeSfx" type="Node" parent="Ground/AnimationPlayer" index="0"] +script = ExtResource("3_a2vck") +autoplay_group = &"c02_楼道2" +metadata/_custom_type_script = "uid://cpejxlfni6n52" + +[node name="BGSprite2D" parent="Ground" index="2"] +light_mask = 5 +position = Vector2(0, -2) +texture = ExtResource("4_44hjs") + +[node name="portal_left" parent="Ground/DeployLayer" index="0"] +position = Vector2(34, 8) +target_scene = "c02_s07" +target_portal = "1" + +[node name="portal_right" parent="Ground/DeployLayer" index="1"] +position = Vector2(873, 15) + +[node name="MainPlayer" parent="Ground" index="5"] +position = Vector2(63, 95) +catty_light_energy = 0.5 +facing_direction = Vector2(1, 0) + +[node name="FGSprite2D" parent="Ground/ParallaxForeground/FGParallaxLayer" index="0"] +position = Vector2(0, -5) +scale = Vector2(1.1, 1.1) +texture = ExtResource("5_igke8") + +[node name="PlayerLine2D" parent="Ground/ParallaxForeground" index="2"] +points = PackedVector2Array(26, 150, 900, 150) + +[node name="DirectionalLight2D" parent="Ground" index="8"] +visible = false +energy = 0.9 +blend_mode = 1 + +[editable path="Ground"] diff --git a/scene/ground/scene/c03/s02_瞎子理发店.tscn b/scene/ground/scene/c03/s02_瞎子理发店.tscn new file mode 100644 index 00000000..b201b36f --- /dev/null +++ b/scene/ground/scene/c03/s02_瞎子理发店.tscn @@ -0,0 +1,163 @@ +[gd_scene load_steps=10 format=3 uid="uid://bsqt2c061fmin"] + +[ext_resource type="PackedScene" uid="uid://dayyx4jerj7io" path="res://scene/ground/ground.tscn" id="1_3wf66"] +[ext_resource type="Script" uid="uid://cim5bqm2nayls" path="res://scene/ground/scene/c03/s03_瞎子理发店.gd" id="2_bgfwa"] +[ext_resource type="Script" uid="uid://cpejxlfni6n52" path="res://manager/audio_manager/vibe_sfx.gd" id="3_e8ujm"] +[ext_resource type="Texture2D" uid="uid://6ol2om68cd1q" path="res://asset/art/scene/c02/s06_二楼楼道/bg_背景.png" id="4_d832i"] +[ext_resource type="Texture2D" uid="uid://crev0svowqla" path="res://asset/art/scene/c02/s06_二楼楼道/fg_前景.png" id="5_to2km"] + +[sub_resource type="Animation" id="Animation_k01ve"] +length = 0.001 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("DirectionalLight2D:energy") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [0.9] +} +tracks/1/type = "value" +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/path = NodePath("MainPlayer:hide_sprite") +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("MainPlayer:visible") +tracks/2/interp = 1 +tracks/2/loop_wrap = true +tracks/2/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 1, +"values": [true] +} + +[sub_resource type="Animation" id="Animation_lh55k"] +resource_name = "c02_final_show_end" +length = 14.0 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("MainPlayer:hide_sprite") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0, 3.8), +"transitions": PackedFloat32Array(1, 1), +"update": 1, +"values": [true, false] +} +tracks/1/type = "value" +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/path = NodePath("MainPlayer:visible") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 1, +"values": [true] +} + +[sub_resource type="Animation" id="Animation_ciatp"] +resource_name = "c02_final_show_join" +length = 12.5 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("DirectionalLight2D:energy") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0, 12.1, 12.5), +"transitions": PackedFloat32Array(1, 1, 1), +"update": 0, +"values": [1.0, 1.0, 0.9] +} +tracks/1/type = "value" +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/path = NodePath("MainPlayer:visible") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 1, +"values": [false] +} + +[sub_resource type="AnimationLibrary" id="AnimationLibrary_k01ve"] +_data = { +&"RESET": SubResource("Animation_k01ve"), +&"c02_final_show_end": SubResource("Animation_lh55k"), +&"c02_final_show_join": SubResource("Animation_ciatp") +} + +[node name="S03" type="Node2D"] + +[node name="Ground" parent="." instance=ExtResource("1_3wf66")] +scene_name = "c03_s03" +player_y = 60 + +[node name="AnimationPlayer" parent="Ground" index="0"] +libraries = { +&"": SubResource("AnimationLibrary_k01ve") +} +script = ExtResource("2_bgfwa") +debug_global_data = Dictionary[String, Variant]({ +"enabled_items": ["prop_火柴", "prop_院长的信", "prop_银元"] +}) +oneshot_animation = "" + +[node name="VibeSfx" type="Node" parent="Ground/AnimationPlayer" index="0"] +script = ExtResource("3_e8ujm") +autoplay_group = &"c02_楼道2" +metadata/_custom_type_script = "uid://cpejxlfni6n52" + +[node name="BGSprite2D" parent="Ground" index="2"] +light_mask = 5 +position = Vector2(0, -2) +texture = ExtResource("4_d832i") + +[node name="portal_left" parent="Ground/DeployLayer" index="0"] +position = Vector2(34, 8) +target_scene = "c02_s07" +target_portal = "1" + +[node name="portal_right" parent="Ground/DeployLayer" index="1"] +position = Vector2(873, 15) + +[node name="MainPlayer" parent="Ground" index="5"] +position = Vector2(63, 95) +catty_light_energy = 0.5 +facing_direction = Vector2(1, 0) + +[node name="FGSprite2D" parent="Ground/ParallaxForeground/FGParallaxLayer" index="0"] +position = Vector2(0, -5) +scale = Vector2(1.1, 1.1) +texture = ExtResource("5_to2km") + +[node name="PlayerLine2D" parent="Ground/ParallaxForeground" index="2"] +points = PackedVector2Array(26, 150, 900, 150) + +[node name="DirectionalLight2D" parent="Ground" index="8"] +visible = false +energy = 0.9 +blend_mode = 1 + +[editable path="Ground"] diff --git a/scene/ground/scene/c03/s03_瞎子理发店.gd b/scene/ground/scene/c03/s03_瞎子理发店.gd new file mode 100644 index 00000000..21463fc3 --- /dev/null +++ b/scene/ground/scene/c03/s03_瞎子理发店.gd @@ -0,0 +1,26 @@ +@tool +extends AnimationRoot + + +# 覆盖该方法 +func _default_data() -> Dictionary: + return {} + + +func _ready() -> void: + super._ready() + if Engine.is_editor_hint(): + return + + +#region node_reference +#endregion + + +# 读取设置变量名 +func _setup_node_reference() -> void: + pass + + +func _on_ground_ready() -> void: + pass diff --git a/scene/ground/scene/c03/s01_瞎子理发店.gd.uid b/scene/ground/scene/c03/s03_瞎子理发店.gd.uid similarity index 100% rename from scene/ground/scene/c03/s01_瞎子理发店.gd.uid rename to scene/ground/scene/c03/s03_瞎子理发店.gd.uid diff --git a/scene/ground/script/c02/空房间小蝉头套.tscn b/scene/ground/script/c02/空房间小蝉头套.tscn index 86c812d0..4f73e0f6 100644 --- a/scene/ground/script/c02/空房间小蝉头套.tscn +++ b/scene/ground/script/c02/空房间小蝉头套.tscn @@ -1,7 +1,7 @@ [gd_scene load_steps=5 format=3 uid="uid://bffqprfmpt0bx"] [ext_resource type="Script" uid="uid://criy10vfyc262" path="res://scene/ground/script/c02/空房间小蝉头套.gd" id="1_yumf6"] -[ext_resource type="Texture2D" uid="uid://b0arnhnvdn0ew" path="res://asset/art/gif/c02_空房间/ux_小蝉头套特写.png" id="2_yumf6"] +[ext_resource type="Texture2D" uid="uid://b0arnhnvdn0ew" path="res://asset/art/scene/c02/s10_空房间/ux_小蝉头套特写.png" id="2_yumf6"] [ext_resource type="PackedScene" uid="uid://dmysq4sxx8iqh" path="res://scene/entity/ux/content_inspector.tscn" id="3_64wgd"] [ext_resource type="Texture2D" uid="uid://f186lvt5y2ql" path="res://asset/art/ui/遮罩/inspect背景遮罩.png" id="4_v60v3"]