From 0fbda6ba199faa1a003a27417e5bc5e08b25c380 Mon Sep 17 00:00:00 2001 From: cakipaul Date: Wed, 6 Aug 2025 01:55:29 +0800 Subject: [PATCH] update --- manager/archive_manager/savings_panel.gd | 2 ++ manager/scene/global_functor.gd | 3 ++- manager/scene/scene_manager.gd | 2 ++ scene/ground/scene/c02/s08_瞎子卧室.tscn | 20 ++++++++++++++++++- scene/ground/script/c02/盒子猫canvas_layer.gd | 9 +++++---- scene/ux/prop_hud.gd | 2 +- 6 files changed, 31 insertions(+), 7 deletions(-) diff --git a/manager/archive_manager/savings_panel.gd b/manager/archive_manager/savings_panel.gd index 3955f175..df681026 100644 --- a/manager/archive_manager/savings_panel.gd +++ b/manager/archive_manager/savings_panel.gd @@ -156,6 +156,8 @@ func _refresh_archive_list() -> void: # Create UI items for each manual archive var sorted_ids = manual_archives.keys() sorted_ids.sort() + # 倒序展示 + sorted_ids.reverse() for id in sorted_ids: var data = manual_archives[id] diff --git a/manager/scene/global_functor.gd b/manager/scene/global_functor.gd index e2ed6695..ae21f720 100644 --- a/manager/scene/global_functor.gd +++ b/manager/scene/global_functor.gd @@ -5,6 +5,7 @@ var dialogue_c02 = preload("res://asset/dialogue/c02.dialogue") func _ready() -> void: process_mode = Node.PROCESS_MODE_PAUSABLE + SceneManager.main_scene_quitted.connect(c02_fire_count_down_stop) # called from dialogue @@ -75,6 +76,6 @@ func _on_c02_fire_count_down_timeout(): func c02_fire_count_down_stop(): if c02_fire_count_down_timer: - c02_fire_count_down_timer.stop() + c02_fire_count_down_timer.queue_free() # 停止音效 AudioManager.stop_bgm_music("霸凌救小蝉倒计时") diff --git a/manager/scene/scene_manager.gd b/manager/scene/scene_manager.gd index e327d643..d75332cb 100644 --- a/manager/scene/scene_manager.gd +++ b/manager/scene/scene_manager.gd @@ -8,6 +8,7 @@ enum VIBE { } signal pause_counter_updated +signal main_scene_quitted # 从 ground loader 控制该信号 # 建议使用 CONNECT_ONE_SHOT 来连接 ground ready 与 start 等信号 @@ -350,6 +351,7 @@ func checkout_index_page(transition := true) -> void: _jump_back_to_index_and_quit_main() else: _jump_back_to_index_and_quit_main() + main_scene_quitted.emit() var packed_index_page := preload("uid://c4ycvdsabi7lw") diff --git a/scene/ground/scene/c02/s08_瞎子卧室.tscn b/scene/ground/scene/c02/s08_瞎子卧室.tscn index dce1e0be..2e5ce517 100644 --- a/scene/ground/scene/c02/s08_瞎子卧室.tscn +++ b/scene/ground/scene/c02/s08_瞎子卧室.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=38 format=3 uid="uid://ce2vyyg2reg52"] +[gd_scene load_steps=40 format=3 uid="uid://ce2vyyg2reg52"] [ext_resource type="PackedScene" uid="uid://dayyx4jerj7io" path="res://scene/ground/ground.tscn" id="1_judx3"] [ext_resource type="Script" uid="uid://hbbgymjs5xte" path="res://scene/ground/scene/c02/s08_瞎子卧室.gd" id="2_m4uw8"] @@ -23,6 +23,7 @@ [ext_resource type="Texture2D" uid="uid://bgtxwxerl2dxh" path="res://asset/art/scene/c02/s08_瞎子卧室/十字架.png" id="11_t3h08"] [ext_resource type="Texture2D" uid="uid://bcqcvohj7jy40" path="res://asset/art/scene/c02/杂物/煤油灯 关灯.png" id="11_u4psw"] [ext_resource type="Texture2D" uid="uid://bmid3iu2ch35o" path="res://asset/art/scene/c02/s08_瞎子卧室/八卦图.png" id="12_1ws4i"] +[ext_resource type="AudioStream" uid="uid://dqdjxy04ge0r5" path="res://asset/audio/sfx/旧版/c02/场景转场.ogg" id="12_quq80"] [ext_resource type="SpriteFrames" uid="uid://b7fhheih1hbvf" path="res://config/animation/entity_sprite_frames.tres" id="13_t3h08"] [ext_resource type="PackedScene" uid="uid://jr1yd46wm5je" path="res://scene/entity/note.tscn" id="14_1ws4i"] [ext_resource type="PackedScene" uid="uid://cxv7vdgwb8lqb" path="res://scene/ground/script/c02/s08_画特写2.tscn" id="16_nub1x"] @@ -73,6 +74,10 @@ _data = { &"RESET": SubResource("Animation_f6mma") } +[sub_resource type="RectangleShape2D" id="RectangleShape2D_nnqdd"] +resource_local_to_scene = true +size = Vector2(30, 130) + [sub_resource type="RectangleShape2D" id="RectangleShape2D_a48k2"] resource_local_to_scene = true size = Vector2(20, 70) @@ -179,6 +184,18 @@ status = "opened" default_sign_texture = ExtResource("8_dkqw0") opened_sign_texture = ExtResource("8_dkqw0") +[node name="SfxOpen" parent="Ground/DeployLayer/portal_1" index="1"] +stream = ExtResource("12_quq80") + +[node name="SfxEnter" parent="Ground/DeployLayer/portal_1" index="2"] +stream = ExtResource("12_quq80") + +[node name="CollisionShape2D" parent="Ground/DeployLayer/portal_1/Area2D" index="0"] +shape = SubResource("RectangleShape2D_nnqdd") + +[node name="SignSnapper" parent="Ground/DeployLayer/portal_1" index="7"] +action_on_arrived = 4 + [node name="Sprite2D" type="Sprite2D" parent="Ground/DeployLayer/portal_1"] show_behind_parent = true light_mask = 33 @@ -381,5 +398,6 @@ energy = 0.9 blend_mode = 1 [editable path="Ground"] +[editable path="Ground/DeployLayer/portal_1"] [editable path="Ground/DeployLayer/灯座Sprite2D/煤油灯"] [editable path="Ground/DeployLayer/Ambush偷听"] diff --git a/scene/ground/script/c02/盒子猫canvas_layer.gd b/scene/ground/script/c02/盒子猫canvas_layer.gd index fc588f79..e90b49ac 100644 --- a/scene/ground/script/c02/盒子猫canvas_layer.gd +++ b/scene/ground/script/c02/盒子猫canvas_layer.gd @@ -17,10 +17,11 @@ func _ready(): await get_parent().ready # 盒子猫镜头左右各增加边框宽度 var camera = SceneManager.get_camera_marker() - camera.limit_left -= 100 - camera.limit_right += 100 - camera.limit_top -= 50 - # camera.limit_bottom += 50 + var rect: Rect2i = camera.default_camera_rect + rect.position.x -= 100 + rect.size.x += 200 + # rect.position.y -= 50 + camera.apply_limits(rect) if show_cat and not ArchiveManager.get_global_value(&"c02_boxcat_skip_intro"): cat_fg.visible = true var tween = create_tween() diff --git a/scene/ux/prop_hud.gd b/scene/ux/prop_hud.gd index 6e0a5dfb..8c733fe1 100644 --- a/scene/ux/prop_hud.gd +++ b/scene/ux/prop_hud.gd @@ -239,7 +239,7 @@ func _load_texture_cache() -> void: continue if not items_dict.has(key): - inventory.disable_item_tmp(key) + inventory.disable_item_temp(key) virtual_items = inventory.virtual_enabled_items() printerr( "PropHud _load_texture_cache: key not found in items_dict:", key, ". remove item."