index 无需章节入口(已有存档管理器)

This commit is contained in:
cakipaul 2025-07-17 00:02:25 +08:00
parent 850900ad5f
commit 571c6ab74c
5 changed files with 0 additions and 782 deletions

View File

@ -5,8 +5,6 @@
[ext_resource type="AudioStream" uid="uid://cvttds81trcoc" path="res://asset/audio/sfx/UI/click.ogg" id="2_te6ya"] [ext_resource type="AudioStream" uid="uid://cvttds81trcoc" path="res://asset/audio/sfx/UI/click.ogg" id="2_te6ya"]
[ext_resource type="Script" uid="uid://rq6w1vuhuq1m" path="res://scene/entity/audio/sfx.gd" id="3_5oc6i"] [ext_resource type="Script" uid="uid://rq6w1vuhuq1m" path="res://scene/entity/audio/sfx.gd" id="3_5oc6i"]
[ext_resource type="Script" uid="uid://bbg4vopj4apl6" path="res://scene/entity/audio/bgm_control.gd" id="4_5oc6i"] [ext_resource type="Script" uid="uid://bbg4vopj4apl6" path="res://scene/entity/audio/bgm_control.gd" id="4_5oc6i"]
[ext_resource type="AudioStream" uid="uid://b3b4a6nm8557i" path="res://asset/audio/专用/衔蝶_主菜单music剪辑人声版.wav" id="5_5oc6i"]
[ext_resource type="Script" uid="uid://c63lrar71o17d" path="res://scene/index/启动入口.gd" id="7_1sxgt"]
[ext_resource type="AudioStream" uid="uid://b3b4a6nm8557i" path="res://asset/audio/专用/衔蝶_主菜单music剪辑人声版.ogg" id="5_5oc6i"] [ext_resource type="AudioStream" uid="uid://b3b4a6nm8557i" path="res://asset/audio/专用/衔蝶_主菜单music剪辑人声版.ogg" id="5_5oc6i"]
[ext_resource type="FontFile" uid="uid://bjmhscwn1ixj1" path="res://asset/font/字体/ChillJinshuSongMedium.otf" id="7_1sxgt"] [ext_resource type="FontFile" uid="uid://bjmhscwn1ixj1" path="res://asset/font/字体/ChillJinshuSongMedium.otf" id="7_1sxgt"]
@ -162,34 +160,3 @@ grow_horizontal = 2
grow_vertical = 2 grow_vertical = 2
mouse_filter = 2 mouse_filter = 2
color = Color(0, 0, 0, 1) color = Color(0, 0, 0, 1)
[node name="启动入口" type="VBoxContainer" parent="."]
layout_mode = 0
offset_left = 298.0
offset_top = 50.0
offset_right = 396.0
offset_bottom = 172.0
script = ExtResource("7_1sxgt")
[node name="Label" type="Label" parent="启动入口"]
layout_mode = 2
text = "【仅测试版本启用】"
[node name="DebugMode" type="Button" parent="启动入口"]
custom_minimum_size = Vector2(50, 0)
layout_mode = 2
text = "退出 debug mode仅本次启动游戏有效若想持续生效需退出游戏后改动 config.tres/.res "
autowrap_mode = 3
[node name="Chapter1" type="Button" parent="启动入口"]
layout_mode = 2
text = "从第一章开始新游戏"
[node name="Chapter2" type="Button" parent="启动入口"]
layout_mode = 2
text = "从第二章开始新游戏"
[node name="Chapter3" type="Button" parent="启动入口"]
visible = false
layout_mode = 2
text = "从第三章开始新游戏"

View File

@ -1,39 +0,0 @@
extends VBoxContainer
func _ready() -> void:
if not GlobalConfig.DEBUG:
queue_free()
return
$DebugMode.pressed.connect(_exit_debug_mode)
$Chapter1.pressed.connect(_start_game.bind(1))
$Chapter2.pressed.connect(_start_game.bind(2))
$Chapter3.pressed.connect(_start_game.bind(3))
func _exit_debug_mode() -> void:
GlobalConfig.DEBUG = false
print_rich("[color=orange]Debug mode disabled[/color]")
queue_free()
func _start_game(chapter: int) -> void:
$"../SfxClick".global_play()
var archive_res: AssembledArchive
if chapter == 1:
archive_res = load("uid://x2yr8b2ul5al")
if archive_res.version != ArchiveManager.CURRENT_VERSION:
printerr("存档版本不匹配,已自动更新存档版本")
archive_res.version = ArchiveManager.CURRENT_VERSION
elif chapter == 2:
archive_res = load("uid://b45y2iffjdieg")
if archive_res.version != ArchiveManager.CURRENT_VERSION:
printerr("存档版本不匹配,已自动更新存档版本")
archive_res.version = ArchiveManager.CURRENT_VERSION
archive_res = archive_res.duplicate(true)
ArchiveManager.create_and_use_new_archive(1)
archive_res.take_over_path(ArchiveManager.archive.resource_path)
ArchiveManager.archive = archive_res
# new game 时音量渐隐
$"../BgmControl".stop(0.5)
SceneManager.enter_main_scene()

View File

@ -1 +0,0 @@
uid://c63lrar71o17d

View File

@ -1,37 +0,0 @@
[gd_resource type="Resource" script_class="AssembledArchive" load_steps=5 format=3 uid="uid://x2yr8b2ul5al"]
[ext_resource type="Script" uid="uid://b63jgb1ag242f" path="res://manager/archive_manager/ground_archive.gd" id="1_na6rk"]
[ext_resource type="Script" uid="uid://cay6xv3x51phl" path="res://scene/ux/prop_inventory_resource.gd" id="2_uc52y"]
[ext_resource type="Script" uid="uid://cusw17h37oc0g" path="res://manager/archive_manager/assembled_archive.gd" id="3_sr6ce"]
[sub_resource type="Resource" id="Resource_6q3u4"]
script = ExtResource("2_uc52y")
owner = ""
current_index = 0
important_items = Array[String]([])
unviewed_important_items = Array[String]([])
default_enabled_items = Array[String]([])
xdie_enabled_items = Array[String]([])
xxdie_enabled_items = Array[String]([])
xxxdie_enabled_items = Array[String]([])
[resource]
script = ExtResource("3_sr6ce")
version = 6
archive_id = 1
entrance_portal = &"left"
current_scene = &"c02_s01"
player_global_position_x = -100.0
player_direction = Vector2(0, 0)
game_seconds = 0
created_time = "2025-07-11 01:22:58"
event_stage = Dictionary[StringName, int]({})
global_data_dict = Dictionary[StringName, Variant]({})
ground_archives = Dictionary[StringName, ExtResource("1_na6rk")]({})
npc_anonymous_states = Dictionary[StringName, bool]({})
player_running_locked = false
prop_inventory = SubResource("Resource_6q3u4")
mem_display_dict = Dictionary[int, bool]({})
bayinhe_current_answer = [0, 0, 0, 0, 0, 0, 0, 0, 0]
bayinhe_mode = "closed"
metadata/_custom_type_script = "uid://cusw17h37oc0g"

View File

@ -1,672 +0,0 @@
[gd_resource type="Resource" script_class="AssembledArchive" load_steps=19 format=3 uid="uid://b45y2iffjdieg"]
[ext_resource type="Script" uid="uid://b63jgb1ag242f" path="res://manager/archive_manager/ground_archive.gd" id="1_6q3u4"]
[ext_resource type="Script" uid="uid://cay6xv3x51phl" path="res://scene/ux/prop_inventory_resource.gd" id="2_sql7f"]
[ext_resource type="Script" uid="uid://cusw17h37oc0g" path="res://manager/archive_manager/assembled_archive.gd" id="3_qjj7j"]
[sub_resource type="Resource" id="Resource_6q3u4"]
script = ExtResource("1_6q3u4")
scene_name = "c02_s01"
data = {
"AnimationPlayer": {},
"Local寻人启事": {
"icount": 0
},
"Note门口": {
"icount": 2
},
"portal_left": {
"icount": 0
},
"portal_right": {
"icount": 1
}
}
[sub_resource type="Resource" id="Resource_qjj7j"]
script = ExtResource("1_6q3u4")
scene_name = "c02_s02"
data = {
"Ambush太暗了": {
"played": true
},
"Ambush小蝉闪现": {
"played": true
},
"Ambush推小鞋子": {
"played": true
},
"Ambush杂物堆": {
"played": true
},
"Ambush纸人": {
"played": false
},
"AnimationPlayer": {
"first_enter": true,
"flyer_shaven": true
},
"Closeup八音盒": {
"icount": 8,
"interacted_times": 8
},
"Closeup刮海报": {
"icount": 1,
"interacted_times": 1
},
"InteractableLeftPortal": {
"icount": 0,
"interacted_times": 0
},
"Interactable小鞋子": {
"icount": 1,
"interacted_times": 1
},
"Note大头娃娃": {
"icount": 0
},
"Note老鼠洞": {
"icount": 0
},
"portal_left": {
"icount": 0
},
"portal_right": {
"icount": 3
},
"海报1": {
"icount": 1
},
"煤油灯": {
"icount": 0,
"interacted_times": 0
},
"青岛啤酒": {
"icount": 1
},
"鼠疫海报": {
"icount": 0
}
}
[sub_resource type="Resource" id="Resource_ja7w6"]
script = ExtResource("1_6q3u4")
scene_name = "c02_s03"
data = {
"Ambush保卫科旁边os": {
"played": true
},
"Ambush偷听对话": {
"played": true
},
"Ambush惊悚闪电": {
"played": true
},
"Ambush点火游戏阻挡右移": {
"played": false
},
"Ambush等待的小蝉": {
"played": true
},
"Ambush老虎钳后小蝉跑": {
"played": true
},
"Ambush要下雨了": {
"played": true
},
"Ambush闷雷纸人": {
"played": true
},
"Ambush霸凌": {
"played": true
},
"AnimationPlayer": {},
"Closeup井": {
"icount": 1,
"interacted_times": 1
},
"Closeup抓药游戏": {
"icount": 0,
"interacted_times": 0
},
"Closeup敲门游戏": {
"icount": 1,
"interacted_times": 1
},
"Interactable柜子": {
"icount": 2,
"interacted_times": 2
},
"Interactable铁门": {
"icount": 1,
"interacted_times": 1
},
"Note柜子可放置区域": {
"icount": 0
},
"Note算命摊位": {
"icount": 0
},
"Note血迹": {
"icount": 0
},
"Npc井边疯子": {
"icount": 2
},
"Pickable小鞋子": {
"picked": true
},
"portal_1": {
"icount": 3
},
"portal_2": {
"icount": 4
},
"portal_3": {
"icount": 2
},
"portal_4": {
"icount": 0
},
"portal_5": {
"icount": 12
},
"portal_left": {
"icount": 2
},
"portal_right": {
"icount": 0
}
}
[sub_resource type="Resource" id="Resource_175lw"]
script = ExtResource("1_6q3u4")
scene_name = "c02_s04"
data = {
"Ambush进门看到小蝉": {
"played": true
},
"AnimationPlayer": {},
"Closeup折锡纸": {
"icount": 1,
"interacted_times": 1
},
"Closeup老鼠精": {
"icount": 0,
"interacted_times": 0
},
"Closeup花名册": {
"icount": 0,
"interacted_times": 0
},
"Local寻人启事": {
"icount": 0
},
"Pickable元宝": {
"picked": true
},
"portal_left": {
"icount": 3
},
"portal_right": {
"icount": 0
},
"小手讨东西": {
"holding_prop": "",
"icount": 5,
"is_holding_cup": false,
"tin_coin_drop": false
}
}
[sub_resource type="Resource" id="Resource_xnubk"]
script = ExtResource("1_6q3u4")
scene_name = "c02_s05"
data = {
"Ambush小蝉消失": {
"played": true
},
"Ambush更新一楼地图": {
"played": true
},
"Ambush杂物堆": {
"played": true
},
"Ambush老鼠叼肉": {
"played": false
},
"AnimationPlayer": {},
"Closeup戏台": {
"icount": 0,
"interacted_times": 0
},
"Closeup拿人偶后记忆闪回": {
"icount": 0,
"interacted_times": 0
},
"Interactable粘鼠板": {
"icount": 1,
"interacted_times": 1
},
"Note一楼内侧通道": {
"icount": 0
},
"Note垃圾通道": {
"icount": 0
},
"Note死老鼠": {
"icount": 0
},
"Npc疯子": {
"icount": 1
},
"Pickable掉落的肉": {
"picked": true
},
"portal_1": {
"icount": 3
},
"portal_2": {
"icount": 0
},
"portal_left": {
"icount": 5
},
"portal_right": {
"icount": 0
}
}
[sub_resource type="Resource" id="Resource_xfhwh"]
script = ExtResource("1_6q3u4")
scene_name = "c02_s06"
data = {
"Ambush三男孩": {
"played": true
},
"Ambush小蝉偷看": {
"played": true
},
"Ambush解锁二楼地图": {
"played": true
},
"Ambush走到尽头后小蝉跑": {
"played": false
},
"AnimationPlayer": {},
"Closeup弹珠游戏": {
"icount": 0,
"interacted_times": 0
},
"Closeup水盆": {
"icount": 0,
"interacted_times": 0
},
"Closeup谢幕演出": {
"icount": 0,
"interacted_times": 0
},
"Inspectable小猫纸条": {
"icount": 1
},
"Interactable老鼠洞": {
"icount": 2,
"interacted_times": 2
},
"Note楼梯杂物堆": {
"icount": 0
},
"portal_1": {
"icount": 0
},
"portal_2": {
"icount": 0
},
"portal_3": {
"icount": 1
},
"portal_4": {
"icount": 0
},
"portal_left": {
"icount": 3
},
"portal_right": {
"icount": 0
},
"煤油灯": {
"icount": 2,
"interacted_times": 1
}
}
[sub_resource type="Resource" id="Resource_53fcv"]
script = ExtResource("1_6q3u4")
scene_name = "c02_s07"
data = {
"AnimationPlayer": {
"flyer_shaven": true
},
"Closeup刮海报": {
"icount": 1,
"interacted_times": 1
},
"Note老鼠洞": {
"icount": 0
},
"Pickable元宝": {
"picked": false
},
"Pickable粘鼠板": {
"picked": true
},
"portal_1": {
"icount": 2
},
"portal_left": {
"icount": 0
},
"portal_right": {
"icount": 4
},
"小手讨东西": {
"holding_prop": "",
"icount": 2,
"is_holding_cup": true,
"tin_coin_drop": false
}
}
[sub_resource type="Resource" id="Resource_cio48"]
script = ExtResource("1_6q3u4")
scene_name = "c02_s08"
data = {
"Ambush偷听": {
"played": true
},
"Ambush回看洞口": {
"played": true
},
"AnimationPlayer": {
"first_entered": false,
"hole_interacted_times": 3
},
"Closeup画": {
"icount": 1,
"interacted_times": 1
},
"Closeup讨厌他们": {
"icount": 1,
"interacted_times": 1
},
"Note八卦图": {
"icount": 1
},
"Note十字架": {
"icount": 0
},
"portal_1": {
"icount": 1
},
"portal_left": {
"icount": 1
},
"portal_right": {
"icount": 0
},
"煤油灯": {
"icount": 1,
"interacted_times": 1
}
}
[sub_resource type="Resource" id="Resource_i3b22"]
script = ExtResource("1_6q3u4")
scene_name = "c02_s09"
data = {
"Ambush剪影指天": {
"played": true
},
"Ambush老鼠": {
"played": true
},
"AnimationPlayer": {},
"portal_left": {
"icount": 1
},
"portal_right": {
"icount": 0
}
}
[sub_resource type="Resource" id="Resource_cpr7i"]
script = ExtResource("1_6q3u4")
scene_name = "c02_s10"
data = {
"Ambush首次进入血脚印": {
"played": true
},
"AnimationPlayer": {
"display_wood_puppet": false
},
"Closeup头套": {
"icount": 1,
"interacted_times": 1
},
"Interactable小蝉": {
"icount": 1,
"interacted_times": 1
},
"Interactable柜子": {
"icount": 1,
"interacted_times": 1
},
"Note进入隧道询问": {
"icount": 1
},
"Pickable小猫玩具脑袋": {
"picked": true
},
"Pickable小蝉人偶": {
"picked": true
},
"portal_left": {
"icount": 1
},
"portal_right": {
"icount": 0
},
"煤油灯": {
"icount": 0,
"interacted_times": 1
}
}
[sub_resource type="Resource" id="Resource_06ncl"]
script = ExtResource("1_6q3u4")
scene_name = "c02_s12"
data = {
"AnimationPlayer": {},
"portal_left": {
"icount": 2
},
"portal_right": {
"icount": 0
}
}
[sub_resource type="Resource" id="Resource_xhybu"]
script = ExtResource("1_6q3u4")
scene_name = "c02_s13"
data = {
"Ambush猫咪敲门互动": {
"played": false
},
"Ambush猫咪敲门互动2": {
"played": false
},
"Ambush猫咪敲门互动3": {
"played": false
},
"Ambush终点光芒互动": {
"played": true
},
"AnimationPlayer": {},
"portal_1": {
"icount": 1
},
"portal_left": {
"icount": 0
},
"portal_right": {
"icount": 0
}
}
[sub_resource type="Resource" id="Resource_w25c8"]
script = ExtResource("1_6q3u4")
scene_name = "c02_s17"
data = {
"Ambush猫咪敲门互动2": {
"played": false
},
"AnimationPlayer": {},
"portal_1": {
"icount": 1
},
"portal_left": {
"icount": 0
},
"portal_right": {
"icount": 2
}
}
[sub_resource type="Resource" id="Resource_gujks"]
script = ExtResource("1_6q3u4")
scene_name = "c03_s01"
data = {
"Ambush偷听陆仁": {
"played": false
},
"AnimationPlayer": {},
"CloseupDemo公告": {
"icount": 1,
"interacted_times": 1
},
"Interactable放肉处": {
"icount": 1,
"interacted_times": 1
},
"Note治病木牌": {
"icount": 2
},
"portal_left": {
"icount": 0
},
"portal_right": {
"icount": 0
}
}
[sub_resource type="Resource" id="Resource_sql7f"]
script = ExtResource("2_sql7f")
owner = ""
current_index = 0
important_items = Array[String](["prop_眼镜盒", "prop_船票", "prop_单只小鞋子", "prop_小蝉人偶"])
unviewed_important_items = Array[String]([])
default_enabled_items = Array[String]([])
xdie_enabled_items = Array[String](["prop_火柴", "prop_撕下的照片上", "prop_小猫玩具完整", "prop_麻将"])
xxdie_enabled_items = Array[String]([])
xxxdie_enabled_items = Array[String]([])
[resource]
script = ExtResource("3_qjj7j")
version = 6
archive_id = 1
entrance_portal = &"right"
current_scene = &"c03_s01"
player_global_position_x = 616.833
player_direction = Vector2(-1, 0)
game_seconds = 1170
created_time = "2025-07-11 01:22:58"
event_stage = Dictionary[StringName, int]({
&"c02_2f_xchan_run_away": 1,
&"c02_ball_game_stage": 4,
&"c02_burning_end_stage": 2,
&"c02_got_pliers": 2,
&"c02_little_hand": 2,
&"c02_madman_interacted_stage": 2,
&"c02_musicbox_stage": 4,
&"c03_s01_meat_put": 1,
&"current_chapter_stage": 3,
&"handnote_c02_gate_chain": 2,
&"handnote_c02_hand_exchange": 2,
&"handnote_c02_hand_requireCoin": 2,
&"handnote_c02_map_1Left": 1,
&"handnote_c02_map_1Right": 1,
&"handnote_c02_map_2": 1,
&"handnote_c02_meat_knockDoor": 1,
&"handnote_c02_musicbox_needPuppet": 2,
&"handnote_c02_road_address": 1,
&"handnote_c02_shoe_giveToMouce": 2,
&"handnote_c02_split_illusionSpace": 1,
&"handnote_c02_xchan_giveHerPuppet": 2,
&"handnote_c02_xchan_sheKnowsMe": 2
})
global_data_dict = Dictionary[StringName, Variant]({
&"c02_boxcat_chasing_started": true,
&"c02_boxcat_skip_intro": true,
&"c02_burning": true,
&"c02_counter_pushed_out": true,
&"c02_counter_x": 159.0,
&"c02_eavesdrop_finished": true,
&"c02_entered_the_splitted_space": true,
&"c02_gaslight_first_failed": true,
&"c02_gaslight_first_lighted": true,
&"c02_little_hand_dropped_tin": true,
&"c02_madman_hitwall": true,
&"c02_meat_door_interacted": true,
&"c02_meat_dropping": true,
&"c02_meat_given": true,
&"c02_mouse_follow_player": false,
&"c02_musicbox_has_opened": false,
&"c02_musicbox_taken_prop_弹珠": true,
&"c02_musicbox_taken_prop_撕下的照片上": true,
&"c02_musicbox_taken_prop_无头小猫玩具": true,
&"c02_musicbox_taken_prop_木头人偶": true,
&"c02_ready_to_fire": true,
&"c02_s02_mouse_push_shoe": true,
&"c02_show_grounded_coins": true,
&"c02_the_blind_room_unlocked": true,
&"c02_tin_coin_taken": true,
&"c02_watched_the_well": true,
&"刮海报_二楼内侧": true,
&"刮海报_过道": true
})
ground_archives = Dictionary[StringName, ExtResource("1_6q3u4")]({
&"c02_s01": SubResource("Resource_6q3u4"),
&"c02_s02": SubResource("Resource_qjj7j"),
&"c02_s03": SubResource("Resource_ja7w6"),
&"c02_s04": SubResource("Resource_175lw"),
&"c02_s05": SubResource("Resource_xnubk"),
&"c02_s06": SubResource("Resource_xfhwh"),
&"c02_s07": SubResource("Resource_53fcv"),
&"c02_s08": SubResource("Resource_cio48"),
&"c02_s09": SubResource("Resource_i3b22"),
&"c02_s10": SubResource("Resource_cpr7i"),
&"c02_s12": SubResource("Resource_06ncl"),
&"c02_s13": SubResource("Resource_xhybu"),
&"c02_s17": SubResource("Resource_w25c8"),
&"c03_s01": SubResource("Resource_gujks")
})
npc_anonymous_states = Dictionary[StringName, bool]({})
player_running_locked = false
prop_inventory = SubResource("Resource_sql7f")
mem_display_dict = Dictionary[int, bool]({
1: true,
2: true
})
bayinhe_current_answer = [0, 0, 0, 0, 0, 0, 0, 0, 0]
bayinhe_mode = "closed"
metadata/_custom_type_script = "uid://cusw17h37oc0g"