From 2e11908b57298f1f5f655c928b0771540594a4a4 Mon Sep 17 00:00:00 2001 From: cakipaul Date: Wed, 12 Mar 2025 15:53:12 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=9E=E7=8E=B0=E5=9F=BA=E6=9C=AC=E7=9A=84?= =?UTF-8?q?=E8=83=8C=E5=8C=85=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../compiler/compiled_line.gd | 2 + addons/dialogue_manager/compiler/compiler.gd | 1 + addons/dialogue_manager/views/main_view.gd | 26 +- asset/art/prop/c01/信.png.import | 34 +++ asset/art/prop/c01/信件右上.png | Bin 0 -> 10820 bytes asset/art/prop/c01/信件右上.png.import | 34 +++ asset/art/prop/c01/信件左上.png | Bin 0 -> 9570 bytes asset/art/prop/c01/信件左上.png.import | 34 +++ asset/art/prop/c01/信件碎片.png | Bin 0 -> 42841 bytes asset/art/prop/c01/信件碎片.png.import | 34 +++ asset/art/prop/c01/院长的信.png | Bin 0 -> 36304 bytes asset/art/prop/c01/院长的信.png.import | 34 +++ asset/dialogue/inspect_content.csv | 4 +- asset/dialogue/item_description.csv | 251 +++++++++--------- asset/dialogue/item_description.csv.import | 6 +- asset/dialogue/item_description.dialogue | 27 +- manager/scene/scene_manager.gd | 17 +- scene/ground/scene/c01/s05_animation.gd | 12 +- scene/ground/scene/c01/s07_书店外.tscn | 1 + scene/ground/scene/c01/s08_animation.gd | 2 +- scene/ground/scene/c01/s08_书店.tscn | 2 +- scene/little_game/拼凑信件.gd | 16 +- scene/prop/prop_bag.gd | 56 +++- scene/prop/prop_bag.tscn | 116 ++++---- scene/prop/prop_bag_button.tscn | 47 ++++ scene/prop/prop_hud.gd | 18 ++ scene/prop/prop_inventory_resource.gd | 8 + 27 files changed, 544 insertions(+), 238 deletions(-) create mode 100644 asset/art/prop/c01/信.png.import create mode 100755 asset/art/prop/c01/信件右上.png create mode 100644 asset/art/prop/c01/信件右上.png.import create mode 100755 asset/art/prop/c01/信件左上.png create mode 100644 asset/art/prop/c01/信件左上.png.import create mode 100755 asset/art/prop/c01/信件碎片.png create mode 100644 asset/art/prop/c01/信件碎片.png.import create mode 100644 asset/art/prop/c01/院长的信.png create mode 100644 asset/art/prop/c01/院长的信.png.import create mode 100644 scene/prop/prop_bag_button.tscn diff --git a/addons/dialogue_manager/compiler/compiled_line.gd b/addons/dialogue_manager/compiler/compiled_line.gd index 972fd5cb..29863548 100644 --- a/addons/dialogue_manager/compiler/compiled_line.gd +++ b/addons/dialogue_manager/compiler/compiled_line.gd @@ -110,6 +110,7 @@ func to_data() -> Dictionary: d.siblings = siblings DMConstants.TYPE_RESPONSE: + # d.text = text.replace("
", "\n") d.text = text if not responses.is_empty(): @@ -131,6 +132,7 @@ func to_data() -> Dictionary: d.notes = notes DMConstants.TYPE_DIALOGUE: + # d.text = text.replace("
", "\n") d.text = text if translation_key != text: diff --git a/addons/dialogue_manager/compiler/compiler.gd b/addons/dialogue_manager/compiler/compiler.gd index a370ef6a..fe9c7f37 100644 --- a/addons/dialogue_manager/compiler/compiler.gd +++ b/addons/dialogue_manager/compiler/compiler.gd @@ -14,6 +14,7 @@ static func compile_string(text: String, path: String) -> DMCompilerResult: result.titles = compilation.titles result.first_title = compilation.first_title result.errors = compilation.errors + # result.lines = compilation.lines result.lines = compilation.data result.raw_text = text diff --git a/addons/dialogue_manager/views/main_view.gd b/addons/dialogue_manager/views/main_view.gd index 00581dcd..9aad5e34 100644 --- a/addons/dialogue_manager/views/main_view.gd +++ b/addons/dialogue_manager/views/main_view.gd @@ -563,9 +563,9 @@ func generate_translations_keys() -> void: # Add a translation file to the project settings func add_path_to_project_translations(path: String) -> void: var translations: PackedStringArray = ProjectSettings.get_setting("internationalization/locale/translations") - if not path in translations: - translations.append(path) - ProjectSettings.save() + # if not path in translations: + # translations.append(path) + # ProjectSettings.save() # Export dialogue and responses to CSV @@ -615,11 +615,12 @@ func export_translations_to_csv(path: String) -> void: notes_column = column_count column_count += 1 existing_csv["keys"].append("_notes") - # include tags - if tags_coloumn == -1: - tags_coloumn = column_count - column_count += 1 - existing_csv["keys"].append("_tags") + + # include tags + if tags_coloumn == -1: + tags_coloumn = column_count + column_count += 1 + existing_csv["keys"].append("_tags") # Start a new file file = FileAccess.open(path, FileAccess.WRITE) @@ -666,11 +667,12 @@ func export_translations_to_csv(path: String) -> void: line_to_save[default_locale_column] = line.text if character_column > -1: - line_to_save[character_column] = "(response)" if line.type == DMConstants.TYPE_RESPONSE else line.character + line_to_save[character_column] = "(response)" if line.type == DMConstants.TYPE_RESPONSE else line.get("character","") if notes_column > -1: - line_to_save[notes_column] = line.notes - if tags_coloumn > -1 and line.tags.size() > 0: - line_to_save[tags_coloumn] = "[#" + "][#".join(line.tags) + "]" + line_to_save[notes_column] = line.get("notes","") + var tags = line.get("tags",[]) as Array + if tags_coloumn > -1 and tags.size() > 0: + line_to_save[tags_coloumn] = "[#" + "][#".join(tags) + "]" lines_to_save.append(line_to_save) diff --git a/asset/art/prop/c01/信.png.import b/asset/art/prop/c01/信.png.import new file mode 100644 index 00000000..996ab867 --- /dev/null +++ b/asset/art/prop/c01/信.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://cpbtccuvtn1p2" +path="res://.godot/imported/信.png-3a73e49fce8c47ae21f0125e66711462.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://asset/art/prop/c01/信.png" +dest_files=["res://.godot/imported/信.png-3a73e49fce8c47ae21f0125e66711462.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/prop/c01/信件右上.png b/asset/art/prop/c01/信件右上.png new file mode 100755 index 0000000000000000000000000000000000000000..33a4a0a7ea18850758eec27f74b871176afb0e8a GIT binary patch literal 10820 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 tXlT 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 O0000f6Xi@@54ZTQ_E-Enz5K6$1 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 M07*qoM6N<$f)O9mR{#J2 literal 0 HcmV?d00001 diff --git a/asset/art/prop/c01/信件左上.png.import b/asset/art/prop/c01/信件左上.png.import new file mode 100644 index 00000000..d9a5df0e --- /dev/null +++ b/asset/art/prop/c01/信件左上.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://d24q8r6yklf1w" +path="res://.godot/imported/信件左上.png-dfd85c03ddfdc23a6ddae9026ff8412e.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://asset/art/prop/c01/信件左上.png" +dest_files=["res://.godot/imported/信件左上.png-dfd85c03ddfdc23a6ddae9026ff8412e.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/prop/c01/信件碎片.png b/asset/art/prop/c01/信件碎片.png new file mode 100755 index 0000000000000000000000000000000000000000..4e75f9232a6c2e6f529aeeae671be62474e4a946 GIT binary patch literal 42841 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 F{{xMQz2yJ^ literal 0 HcmV?d00001 diff --git a/asset/art/prop/c01/信件碎片.png.import b/asset/art/prop/c01/信件碎片.png.import new file mode 100644 index 00000000..f53abda5 --- /dev/null +++ b/asset/art/prop/c01/信件碎片.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://oh4e48nxm4j6" +path="res://.godot/imported/信件碎片.png-148d8c76f1c905d18bd18b04343030cd.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://asset/art/prop/c01/信件碎片.png" +dest_files=["res://.godot/imported/信件碎片.png-148d8c76f1c905d18bd18b04343030cd.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/prop/c01/院长的信.png b/asset/art/prop/c01/院长的信.png new file mode 100644 index 0000000000000000000000000000000000000000..679e3e42d44f60344181903da8cbc6f7f1fc2c8f GIT binary patch literal 36304 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ΠEP9pEg6-{b>Jwh3jQ4eQtGsD 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 literal 0 HcmV?d00001 diff --git a/asset/art/prop/c01/院长的信.png.import b/asset/art/prop/c01/院长的信.png.import new file mode 100644 index 00000000..94791bb0 --- /dev/null +++ b/asset/art/prop/c01/院长的信.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://dl214l7im21sf" +path="res://.godot/imported/院长的信.png-e512e10d022a04385e8eed120b757699.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://asset/art/prop/c01/院长的信.png" +dest_files=["res://.godot/imported/院长的信.png-e512e10d022a04385e8eed120b757699.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/dialogue/inspect_content.csv b/asset/dialogue/inspect_content.csv index 51766cd5..4428c028 100644 --- a/asset/dialogue/inspect_content.csv +++ b/asset/dialogue/inspect_content.csv @@ -2,8 +2,8 @@ keys,zh_CN,_character,_notes,_tags,en t89c0f4a8de,x年,,,, t356af5308e,下午一点,,,, c01_信件全文,"小蝶: -【信件正文内容...】 -【落款】",,,, +信件正文内容... +落款",,,, t344c97cf2c,据闻奉贤县分水墩又有七人染受鼠疫,病状可怖,闻医官药治无用,免职。,,,, tdb119a3714,有地方人称鼠疫为妖邪作祟,甚为惊骇,一时人心惶惶,竟有聚众滋闹之事,政府以防疫事宜关系紧要,拟赴分水墩一带调查防疫事宜云。,,,, ta750647b12,《申报》,,,, diff --git a/asset/dialogue/item_description.csv b/asset/dialogue/item_description.csv index 1a46f099..8a23adcb 100644 --- a/asset/dialogue/item_description.csv +++ b/asset/dialogue/item_description.csv @@ -1,137 +1,124 @@ -keys,zh_CN,en,_character,_notes,_tags -c01_纸包钥匙,一张纸条包着钥匙,,,, -c02_寻人启事1,似乎是一张寻人启事,,,, -c02_寻人启事2,脸的部分被撕掉了,看不清,,,, -=>en,=>en,,,, -c01_获得令牌,令牌,,获得,,[#item] -c01_获得灵魂令牌,带有灵魂的令牌,,获得,,[#item] -c01_获得院长信件,院长的信件,,获得,,[#item] -c02_获得1012钥匙,1012钥匙,,获得,,[#item] -c02_获得老虎钳,老虎钳,,获得,,[#item] -c02_获得绳子,绳子,,获得,,[#item] -c02_获得小猫玩具脑袋,小猫玩具脑袋,,获得,,[#item] -c02_获得小猫玩具,小猫玩具,,获得,,[#item] -c02_获得钥匙,钥匙,,获得,,[#item] -c02_获得火柴,火柴,,获得,,[#item] -c02_1014钥匙,1014钥匙,,获得,,[#item] -c02_老鼠洞1,一个老鼠洞,,,, -c02_老鼠洞2,在这种楼里挺常见的,,,, -ui_新游戏,新游戏,,,, -ui_继续游戏,继续游戏,,,, -ui_退出游戏,退出游戏,,,, -c02_寻人启事,"似乎是一张寻人启事 -脸的部分被撕掉了,看不清",,,, -prop_报纸,报纸,,,,[#texture=c01/信碎片1.png] -index_新游戏,新游戏,,,, -index_继续游戏,继续游戏,,,, -index_退出游戏,退出游戏,,,, -setting_总音量,总音量,,,, -setting_音效音量,音效音量,,,, -setting_对话音量,对话音量,,,, -setting_全屏游戏,全屏游戏,,,, -setting_窗口置顶,窗口置顶,,,, -setting_自动保存,自动保存,,,, -setting_主界面,回到主界面,,,, -setting_退出,保存并退出,,,, -setting_日志,打开日志,,,, -ui_秒,秒,,,, -ui_saved_all,已保存所有数据,,,, -ui_new_archive,已创建新存档,,,, -ui_auto_saved,自动保存成功,,,, -ui_press_e,按 E 与场景互动,,,, -ui_press_b,按 B 打开背包,,,, -ui_press_shift,按住 Shift 奔跑,,,, -input_拼凑信件,点击选择信件碎片,方向键移动,按 E 旋转,,,, -ui_获得,获得,,,, -ui_退出,退出,Exit,,, -ui_阅读,阅读,Read,,, -ui_检阅,检阅,,,, -ui_收起,收起,Hold,,, -ui_夜行船1,百岁光阴一梦蝶。,,,, -ui_夜行船2,重回⾸往事堪嗟。,,,, -ui_夜行船3,今⽇春来。明朝花谢。,,,, -ui_夜行船4,急罚盏夜阑灯灭。,,,, -ui_夜行船5,夜行船,,,, -prop_空手,空手,,,, -prop_信碎片1,信碎片(一),,,,[#texture=c01/信碎片1.png] -prop_信碎片2,信碎片(二),,,,[#texture=c01/信碎片1.png] -prop_院长的信,院长的信,,,,[#texture=c01/信碎片1.png] -prop_银元,银元,,,,[#texture=c01/银元.png] -prop_令牌,令牌,,,,[#texture=c01/令牌物品.png][#inspect=c01/令牌.png] -prop_装有灵魂的令牌,装有灵魂的令牌,,,,[#texture=c01/装有灵魂的令牌物品.png][#inspect=c01/装有灵魂的令牌.png] -prop_火柴,火柴,,,,[#texture=c02/火柴.png] -prop_小猫玩具的脑袋,小猫玩具的脑袋,Catty's Head,,,[#texture=c02/小猫玩具脑袋物品.png][#inspect=c02/小猫玩具脑袋.png] -prop_绳子,绳子,Rope,,,[#texture=c02/绳子物品.png][#inspect=c02/绳子.png] -prop_1012钥匙,1012钥匙,1012 Key,,,[#texture=c02/1012钥匙物品.png][#inspect=c02/1012钥匙.png] -prop_老虎钳,老虎钳,,,,[#texture=c02/老虎钳物品.png][#inspect=c02/老虎钳.png] -prop_3014旋转锁钥匙,3014旋转锁钥匙,,,,[#texture=c02/3014旋转锁钥匙物品.png][#inspect=c02/3014旋转锁钥匙.png] -prop_小猫玩具完整,小猫玩具,,,,[#texture=c02/小猫玩具完整物品.png][#inspect=c02/小猫玩具完整.png] -c01_s07_需要报纸,我想先在周围看看,,,, -c01_s08_书店工作,我还有工作要做,,,, -c01_s08_书店工钱,我还有⼯钱没拿,,,, -notes_纸条,纸条,,,, -notes_锁住了,锁住了,,,, -notes_打不开,打不开,,,, -notes_干掉的血迹,干掉的血迹,,,, -notes_有什么东西,有什么东西,,,, -notes_无法触碰,无法触碰,,,, -notes_挂画,挂画,,,, -notes_相框,相框,,,, -notes_寻人启事,寻人启事,,,, -c01_鸡毛掸子,这是鸡毛掸子吗?,,,, -c01_院长书桌,桌上放着纸笔,,,, -c01_院长床,这本书已经看过了,,,, +keys,zh_CN,_character,_notes,_tags +说明文本,说明文本,,, +ui_press_b,按 B 打开背包,,, +5,5,,, +index_新游戏,新游戏,,, +index_继续游戏,继续游戏,,, +index_退出游戏,退出游戏,,, +setting_总音量,总音量,,, +setting_音效音量,音效音量,,, +setting_对话音量,对话音量,,, +setting_全屏游戏,全屏游戏,,, +setting_窗口置顶,窗口置顶,,, +setting_自动保存,自动保存,,, +setting_主界面,回到主界面,,, +setting_退出,保存并退出,,, +setting_日志,打开日志,,, +ui_秒,秒,,, +ui_saved_all,已保存所有数据,,, +ui_new_archive,已创建新存档,,, +ui_auto_saved,自动保存成功,,, +ui_press_e,按 E 与场景互动,,, +ui_important_item_update,重要物品已更新(按 B 打开背包),,, +ui_press_shift,按住 Shift 奔跑,,, +input_拼凑信件,点击选择信件碎片,方向键移动,按 E 旋转,,, +ui_获得,获得,,, +ui_退出,退出,,, +ui_阅读,阅读,,, +ui_检阅,检阅,,, +ui_收起,收起,,, +ui_夜行船1,百岁光阴一梦蝶。,,, +ui_夜行船2,重回⾸往事堪嗟。,,, +ui_夜行船3,今⽇春来。明朝花谢。,,, +ui_夜行船4,急罚盏夜阑灯灭。,,, +ui_夜行船5,夜行船,,, +prop_空手,空手,,, +prop_信碎片1,信碎片(一),,,[#texture=c01/信件左上.png] +prop_信碎片2,信碎片(二),,,[#texture=c01/信件右上.png] +prop_银元,银元,,,[#texture=c01/银元.png] +prop_院长的信,院长的信,,,[#texture=c01/院长的信.png] +prop_重要物品示例,重要物品示例,,,[#texture=c01/银元.png] +prop_令牌,令牌,,,[#texture=c01/令牌物品.png][#inspect=c01/令牌.png] +prop_装有灵魂的令牌,装有灵魂的令牌,,,[#texture=c01/装有灵魂的令牌物品.png][#inspect=c01/装有灵魂的令牌.png] +prop_火柴,火柴,,,[#texture=c02/火柴.png] +prop_小猫玩具的脑袋,小猫玩具的脑袋,,,[#texture=c02/小猫玩具脑袋物品.png][#inspect=c02/小猫玩具脑袋.png] +prop_绳子,绳子,,,[#texture=c02/绳子物品.png][#inspect=c02/绳子.png] +prop_1012钥匙,1012钥匙,,,[#texture=c02/1012钥匙物品.png][#inspect=c02/1012钥匙.png] +prop_老虎钳,老虎钳,,,[#texture=c02/老虎钳物品.png][#inspect=c02/老虎钳.png] +prop_3014旋转锁钥匙,3014旋转锁钥匙,,,[#texture=c02/3014旋转锁钥匙物品.png][#inspect=c02/3014旋转锁钥匙.png] +prop_小猫玩具完整,小猫玩具,,,[#texture=c02/小猫玩具完整物品.png][#inspect=c02/小猫玩具完整.png] +院长的信...,院长的信...,,, +1,1,,, +2,2,,, +3,3,,, +重要物品示例,重要物品示例,,, +4,4,,, +c01_s07_需要报纸,我想先在周围看看,,, +c01_s08_书店工作,我还有工作要做,,, +c01_s08_书店工钱,我还有⼯钱没拿,,, +notes_纸条,纸条,,, +notes_锁住了,锁住了,,, +notes_打不开,打不开,,, +notes_干掉的血迹,干掉的血迹,,, +notes_有什么东西,有什么东西,,, +notes_无法触碰,无法触碰,,, +notes_挂画,挂画,,, +notes_相框,相框,,, +notes_寻人启事,寻人启事,,, +c01_鸡毛掸子,这是鸡毛掸子吗?,,, +c01_院长书桌,桌上放着纸笔,,, +c01_院长床,这本书已经看过了,,, c01_院长座钟,"1917年10⽉28⽇... -时间停在16\:30",,,, -c01_倾斜的洋相片,洋相片,,,, -c01_摆正的洋相片,是院长的女儿吗,,,, -c01_s06_院长房间,这是院长的房间,,,, -c01_s06_小朋友房间,这是其他小朋友的房间,,,, -c01_s07_钱碗,碗⾥是铜钱,,,, -c01_s07_获得报纸,这是什么?,,,, +时间停在16\:30",,, +c01_倾斜的洋相片,洋相片,,, +c01_摆正的洋相片,是院长的女儿吗,,, +c01_s06_院长房间,这是院长的房间,,, +c01_s06_小朋友房间,这是其他小朋友的房间,,, +c01_s07_钱碗,碗⾥是铜钱,,, +c01_s07_获得报纸,这是什么?,,, c01_s07_书店展柜,"好多书... -要是能在这里工作就好了",,,, +要是能在这里工作就好了",,, c01_s08_书架游戏完成,"这些书怎么变成这样了? -好可惜...我可能需要离开了",,,, +好可惜...我可能需要离开了",,, c02_小蝉寻人启事_脸部破碎,"似乎是一张寻人启事 -脸的部分被撕掉了,看不清",,,, -c02_卫生宣传画,几张卫生宣传画,,,, +脸的部分被撕掉了,看不清",,, +c02_卫生宣传画,几张卫生宣传画,,, c02_老鼠洞,"一个老鼠洞 -在这种楼里挺常见的",,,, -c02_十几年前的报纸,十几年前的报纸,,,, -c02_绳子剪刀,绳子和剪刀,,,, -c02_玩具缺脑袋,这个玩具缺了个脑袋,,,, -c02_又是寻人启示,又是那张寻人启示,,,, -c02_墙上的海报被撕掉了,墙上的海报被撕掉了,,,, -c02_井臭,井里有一股臭味,,,, -c02_中药材,车上放了一些中药材,,,, -c02_排队,排队的人堵住了上楼的路,,,, -c02_不要出去,最好还是先不要出去,,,, -c02_太阳,太阳快落山了,,,, -c02_民国六年1015,民国六年十月十五日,,,, -c02_一个洞,一个洞,里面好像还有空间,,,, -c02_工具箱,工具箱,,,, -c02_找到有用的东西,应该能找到有用的东西,,,, -c02_公寓告示,公寓告示,,,, -c02_通往里间的门,通往里间的门,,,, -c02_花名册,花名册,,,, -c02_罪,罪,,,, -c02_门上有什么东西,门上有什么东西,,,, -c02_奠,奠,,,, -c02_寻夏小蝉,失踪的小孩名叫夏小蝉,,,, -c02_小猫干尸,小猫的尸体已经干了,,,, -c02_几块大洋,几块大洋,,,, -c02_死老鼠,死掉的老鼠,,,, -c02_石缝开花,石缝里开了几束花,,,, -c02_石壁空间,石壁另一头好像还有空间,,,, -c02_民国六年1221,民国六年十二月二十一日,,,, -c02_患者感谢信,一些患者的感谢信,,,, -c02_被撕掉的书,一本被撕掉的书,,,, -c02_里面有什么东西,里面有什么东西,,,, -c02_戏台上的诗,戏台上面刻了一首诗,,,, -c02_锁开了,锁开了,,,, -c02_口袋里有东西,口袋里有东西,,,, -c02_雾太大,雾太大了,看不清路,,,, -c02_八音盒,是个八音盒,,,, -c02_祝女儿早日康复,祝女儿早日康复,,,, -c02_图案一样,这图案和我手臂上的一摸一样,,,, +在这种楼里挺常见的",,, +c02_十几年前的报纸,十几年前的报纸,,, +c02_绳子剪刀,绳子和剪刀,,, +c02_玩具缺脑袋,这个玩具缺了个脑袋,,, +c02_又是寻人启示,又是那张寻人启示,,, +c02_墙上的海报被撕掉了,墙上的海报被撕掉了,,, +c02_井臭,井里有一股臭味,,, +c02_中药材,车上放了一些中药材,,, +c02_排队,排队的人堵住了上楼的路,,, +c02_不要出去,最好还是先不要出去,,, +c02_太阳,太阳快落山了,,, +c02_民国六年1015,民国六年十月十五日,,, +c02_一个洞,一个洞,里面好像还有空间,,, +c02_工具箱,工具箱,,, +c02_找到有用的东西,应该能找到有用的东西,,, +c02_公寓告示,公寓告示,,, +c02_通往里间的门,通往里间的门,,, +c02_花名册,花名册,,, +c02_罪,罪,,, +c02_门上有什么东西,门上有什么东西,,, +c02_奠,奠,,, +c02_寻夏小蝉,失踪的小孩名叫夏小蝉,,, +c02_小猫干尸,小猫的尸体已经干了,,, +c02_几块大洋,几块大洋,,, +c02_死老鼠,死掉的老鼠,,, +c02_石缝开花,石缝里开了几束花,,, +c02_石壁空间,石壁另一头好像还有空间,,, +c02_民国六年1221,民国六年十二月二十一日,,, +c02_患者感谢信,一些患者的感谢信,,, +c02_被撕掉的书,一本被撕掉的书,,, +c02_里面有什么东西,里面有什么东西,,, +c02_戏台上的诗,戏台上面刻了一首诗,,, +c02_锁开了,锁开了,,, +c02_口袋里有东西,口袋里有东西,,, +c02_雾太大,雾太大了,看不清路,,, +c02_八音盒,是个八音盒,,, +c02_祝女儿早日康复,祝女儿早日康复,,, +c02_图案一样,这图案和我手臂上的一摸一样,,, diff --git a/asset/dialogue/item_description.csv.import b/asset/dialogue/item_description.csv.import index 7a8b931d..2e159042 100644 --- a/asset/dialogue/item_description.csv.import +++ b/asset/dialogue/item_description.csv.import @@ -2,14 +2,14 @@ importer="csv_translation" type="Translation" -uid="uid://bd5qbimcnpkb5" +uid="uid://hx4e4wd1tfeg" [deps] -files=["res://asset/dialogue/item_description.zh_CN.translation", "res://asset/dialogue/item_description.en.translation"] +files=["res://asset/dialogue/item_description.zh_CN.translation"] source_file="res://asset/dialogue/item_description.csv" -dest_files=["res://asset/dialogue/item_description.zh_CN.translation", "res://asset/dialogue/item_description.en.translation"] +dest_files=["res://asset/dialogue/item_description.zh_CN.translation"] [params] diff --git a/asset/dialogue/item_description.dialogue b/asset/dialogue/item_description.dialogue index 7e0e536c..ead35310 100644 --- a/asset/dialogue/item_description.dialogue +++ b/asset/dialogue/item_description.dialogue @@ -20,7 +20,7 @@ 自动保存成功 [ID:ui_auto_saved] 按 E 与场景互动 [ID:ui_press_e] -按 B 打开背包 [ID:ui_press_b] +重要物品已更新(按 B 打开背包) [ID:ui_important_item_update] 按住 Shift 奔跑 [ID:ui_press_shift] 点击选择信件碎片,方向键移动,按 E 旋转 [ID:input_拼凑信件] @@ -43,11 +43,13 @@ 空手 [ID:prop_空手] # texture 路径从 "res://asset/art/prop/" 之后算起 # c01 -信碎片(一) [#texture=c01/信碎片1.png] [ID:prop_信碎片1] +#信碎片(一) [#texture=c01/信碎片1.png] [ID:prop_信碎片1] +信碎片(一) [#texture=c01/信件左上.png] [ID:prop_信碎片1] +信碎片(二) [#texture=c01/信件右上.png] [ID:prop_信碎片2] 银元 [#texture=c01/银元.png] [ID:prop_银元] -# TODO 美术资源更换 -信碎片(二) [#texture=c01/信碎片1.png] [ID:prop_信碎片2] -院长的信 [#texture=c01/信碎片1.png] [ID:prop_院长的信] +院长的信 [#texture=c01/院长的信.png] [ID:prop_院长的信] +重要物品示例 [#texture=c01/银元.png] [ID:prop_重要物品示例] + 令牌 [#texture=c01/令牌物品.png][#inspect=c01/令牌.png] [ID:prop_令牌] 装有灵魂的令牌 [#texture=c01/装有灵魂的令牌物品.png][#inspect=c01/装有灵魂的令牌.png] [ID:prop_装有灵魂的令牌] # c02 @@ -60,6 +62,21 @@ 小猫玩具 [#texture=c02/小猫玩具完整物品.png][#inspect=c02/小猫玩具完整.png] [ID:prop_小猫玩具完整] => END +~ prop_院长的信 +院长的信... +1 +2 +3 +=> END + +~ prop_重要物品示例 +重要物品示例 +1 +2 +3 +4 +=> END + ~ HoldingReason 我想先在周围看看 [ID:c01_s07_需要报纸] 我还有工作要做 [ID:c01_s08_书店工作] diff --git a/manager/scene/scene_manager.gd b/manager/scene/scene_manager.gd index 5b5458d8..74fd0b68 100644 --- a/manager/scene/scene_manager.gd +++ b/manager/scene/scene_manager.gd @@ -72,9 +72,7 @@ func unlock_player(): # action_freezed 对应 freeze 与 release 方法 # lock_time: the time to lock the player action. 0 means lock forever, thus the player will be locked until release_player is called. -func freeze_player( - lock_time: float, action := 3, auto_quit := false -) -> void: +func freeze_player(lock_time: float, action := 3, auto_quit := false) -> void: var player = get_player() if player: player.freeze_player(lock_time, action, auto_quit) @@ -116,6 +114,7 @@ func set_player_boundary(rect: Rect2) -> void: var balloon_node + func pop_debug_dialog_info(character: String, content: String): if GlobalConfig.DEBUG: if not is_instance_valid(balloon_node): @@ -157,6 +156,14 @@ func enable_prop_item(prop_key: String) -> void: printerr("enable_prop_item PropHud node not found") +func enable_important_item(prop_key: String) -> void: + var prop_hud = get_prop_hud() + if prop_hud: + prop_hud.inventory.enable_important_item(prop_key) + else: + printerr("enable_important_item PropHud node not found") + + func disable_prop_item(prop_key: String) -> void: var prop_hud = get_prop_hud() if prop_hud: @@ -260,9 +267,7 @@ var prop_bag = preload("res://scene/prop/prop_bag.tscn") func show_bag(): - pass - # 暂时不启用背包 - # get_node("/root/Main").add_child(prop_bag.instantiate()) + get_node("/root/Main").add_child(prop_bag.instantiate()) func quit_game(): diff --git a/scene/ground/scene/c01/s05_animation.gd b/scene/ground/scene/c01/s05_animation.gd index 0aea830f..e6962774 100644 --- a/scene/ground/scene/c01/s05_animation.gd +++ b/scene/ground/scene/c01/s05_animation.gd @@ -101,12 +101,12 @@ func _on_paper_interacted(): right_door.enabled = true SceneManager.pop_debug_dialog_info("音效", "开门声") $"../sfx_door_open".play() - var inspector = SceneManager.get_inspector() as PropInspector - if inspector: - # 显示互动提示 - inspector.quit_and_hidden.connect( - SceneManager.pop_center_notification.bind(tr("ui_press_b")), CONNECT_ONE_SHOT - ) + # var inspector = SceneManager.get_inspector() as PropInspector + # if inspector: + # # 显示互动提示 + # inspector.quit_and_hidden.connect( + # SceneManager.pop_center_notification.bind(tr("ui_prop_update")), CONNECT_ONE_SHOT + # ) # 钢琴音效,每次按下播放不同音符 diff --git a/scene/ground/scene/c01/s07_书店外.tscn b/scene/ground/scene/c01/s07_书店外.tscn index d5d8f2f0..448f6736 100644 --- a/scene/ground/scene/c01/s07_书店外.tscn +++ b/scene/ground/scene/c01/s07_书店外.tscn @@ -107,6 +107,7 @@ height = -10.0 dialogue_title = "c01_s07_吉祥话2" [node name="陆仁擦刀" type="AnimatedSprite2D" parent="Ground/DeployLayer" index="6"] +visible = false position = Vector2(199, 0) sprite_frames = ExtResource("6_thm8f") animation = &"陆仁擦刀" diff --git a/scene/ground/scene/c01/s08_animation.gd b/scene/ground/scene/c01/s08_animation.gd index cfa806c7..66efb546 100644 --- a/scene/ground/scene/c01/s08_animation.gd +++ b/scene/ground/scene/c01/s08_animation.gd @@ -177,11 +177,11 @@ func _on_envelope_game_exiting() -> void: func _on_envelope_game_success() -> void: + SceneManager.release_player() envolope_table.enabled = false create_tween().tween_property(mask, "color:a", 0.0, 1.0).from(1.0) ArchiveManager.archive.set_global_entry("envelope_game_success", true) envelope_game_success = true - SceneManager.enable_prop_item("prop_院长的信") _check_portal() diff --git a/scene/ground/scene/c01/s08_书店.tscn b/scene/ground/scene/c01/s08_书店.tscn index 8dc7b0f6..cf1abecd 100644 --- a/scene/ground/scene/c01/s08_书店.tscn +++ b/scene/ground/scene/c01/s08_书店.tscn @@ -141,7 +141,7 @@ offset = Vector2(0, 40) [node name="PlayerLine2D" parent="Ground/ParallaxForeground" index="2"] points = PackedVector2Array(30, 150, 545, 150) -[node name="参考" type="Sprite2D" parent="Ground"] +[node name="参考" type="Sprite2D" parent="."] visible = false modulate = Color(1, 1, 1, 0.580392) position = Vector2(20, 0) diff --git a/scene/little_game/拼凑信件.gd b/scene/little_game/拼凑信件.gd index 9d77dce7..f7c215b4 100644 --- a/scene/little_game/拼凑信件.gd +++ b/scene/little_game/拼凑信件.gd @@ -29,7 +29,7 @@ func _ready() -> void: _display_selected() content_rect.modulate.a = 0.0 content_rect.visible = true - %Label.text = tr("c01_信件全文") + # %Label.text = tr("c01_信件全文") SceneManager.pop_center_notification(tr("input_拼凑信件")) @@ -132,8 +132,16 @@ func _check_answer() -> void: func _post_success(): - var tween = create_tween() - tween.tween_property(content_rect, "modulate:a", 1.0, 1.0) + # 不显示文本,让玩家在重要物品栏去看(提示) + # var tween = create_tween() + # tween.tween_property(content_rect, "modulate:a", 1.0, 1.0) + SceneManager.pop_center_notification(tr("ui_important_item_update")) + SceneManager.enable_important_item("prop_院长的信") + # 1s 后退出 + await get_tree().create_timer(1.0).timeout + if get_parent() != null: + success.emit() + get_parent().remove_child(self) func _unhandled_input(event: InputEvent) -> void: @@ -175,4 +183,4 @@ func _unhandled_input(event: InputEvent) -> void: if handled: $SfxMove.play() _display_selected() - _check_answer() \ No newline at end of file + _check_answer() diff --git a/scene/prop/prop_bag.gd b/scene/prop/prop_bag.gd index 3fbcb98e..8e79584b 100644 --- a/scene/prop/prop_bag.gd +++ b/scene/prop/prop_bag.gd @@ -1,15 +1,61 @@ extends Panel +@onready var buttons_vbox = %ButtonsVBox as VBoxContainer +@onready var texture_rect = %TextureRect as TextureRect +@onready var content_text_edit = %Content as TextEdit + func _ready(): get_parent().layer = GlobalConfig.CANVAS_LAYER_BAG - _load_inventory() - SceneManager.lock_player() + # SceneManager.lock_player() get_tree().paused = true + _load_item_buttons() -func _load_inventory(): - pass +func _load_item_buttons() -> void: + # 移除 texture_rect 的纹理与 content_text_edit 的内容 + texture_rect.texture = null + content_text_edit.text = "" + # 移除所有子节点 + for child in buttons_vbox.get_children(): + buttons_vbox.remove_child(child) + child.queue_free() + # 从 prop_hud 中读取 + var hud = SceneManager.get_prop_hud() + if not hud: + printerr("PropHud node not found") + return + # prop keys + var inventory = hud.inventory + for prop_key in inventory.important_items: + var button = preload("res://scene/prop/prop_bag_button.tscn").instantiate() + button.text = tr(prop_key) + button.pressed.connect(_display_item.bind(prop_key, button)) + buttons_vbox.add_child(button) + # 如果已读,消除 icon(默认都有 icon) + if not inventory.unviewed_important_items.has(prop_key): + button.icon = null + # # 选中第一个 + # if buttons_vbox.get_child_count() > 0: + # (buttons_vbox.get_child(0) as Button).pres + # # _display_item(inventory.important_items[0]) + + + +func _display_item(prop_key, button): + var hud = SceneManager.get_prop_hud() + if not hud: + printerr("PropHud node not found") + return + # 标记为已读:消除 icon + 写入 inventory + if hud.inventory.unviewed_important_items.has(prop_key): + hud.inventory.unviewed_important_items.erase(prop_key) + button.icon = null + # prop keys + var item_data = hud.items_dict[prop_key] + var content = hud.important_items_dict[prop_key] + content_text_edit.text = content + texture_rect.texture = load(item_data.texture_path) func _unhandled_input(event: InputEvent) -> void: @@ -20,5 +66,5 @@ func _unhandled_input(event: InputEvent) -> void: ): get_viewport().set_input_as_handled() get_tree().paused = false - SceneManager.unlock_player() + # SceneManager.unlock_player() queue_free() diff --git a/scene/prop/prop_bag.tscn b/scene/prop/prop_bag.tscn index 697ed85d..1e16700c 100644 --- a/scene/prop/prop_bag.tscn +++ b/scene/prop/prop_bag.tscn @@ -1,7 +1,14 @@ -[gd_scene load_steps=3 format=3 uid="uid://b6gbolo1o7wdf"] +[gd_scene load_steps=7 format=3 uid="uid://b6gbolo1o7wdf"] [ext_resource type="Script" uid="uid://cg7wdaw03bovq" path="res://scene/prop/prop_bag.gd" id="1_f3hpu"] [ext_resource type="Texture2D" uid="uid://dsj3l0baqg1g7" path="res://asset/art/ui/小蝶笔记.png" id="2_3s314"] +[ext_resource type="PackedScene" uid="uid://wxd25ec3cqyy" path="res://scene/prop/prop_bag_button.tscn" id="3_wlvs1"] +[ext_resource type="Texture2D" uid="uid://dl214l7im21sf" path="res://asset/art/prop/c01/院长的信.png" id="4_wlvs1"] + +[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_mnmsg"] +bg_color = Color(0.6, 0.6, 0.6, 0) + +[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_wlvs1"] [node name="PropBag" type="CanvasLayer"] process_mode = 3 @@ -28,82 +35,69 @@ texture = ExtResource("2_3s314") expand_mode = 5 stretch_mode = 2 -[node name="GridContainer" type="GridContainer" parent="Bag"] -custom_minimum_size = Vector2(270, 120) +[node name="ScrollContainer" type="ScrollContainer" parent="Bag"] +custom_minimum_size = Vector2(120, 160) layout_mode = 1 anchors_preset = 8 anchor_left = 0.5 anchor_top = 0.5 anchor_right = 0.5 anchor_bottom = 0.5 -offset_left = -20.0 -offset_top = -20.0 -offset_right = 20.0 -offset_bottom = 20.0 +offset_left = -139.0 +offset_top = -82.0 +offset_right = -19.0 +offset_bottom = 78.0 grow_horizontal = 2 grow_vertical = 2 -columns = 9 +horizontal_scroll_mode = 0 -[node name="Panel" type="Panel" parent="Bag/GridContainer"] -custom_minimum_size = Vector2(30, 30) +[node name="ButtonsVBox" type="VBoxContainer" parent="Bag/ScrollContainer"] +unique_name_in_owner = true +layout_mode = 2 +size_flags_horizontal = 4 +size_flags_vertical = 0 + +[node name="Button" parent="Bag/ScrollContainer/ButtonsVBox" instance=ExtResource("3_wlvs1")] layout_mode = 2 -[node name="Panel2" type="Panel" parent="Bag/GridContainer"] -custom_minimum_size = Vector2(30, 30) +[node name="Button2" parent="Bag/ScrollContainer/ButtonsVBox" instance=ExtResource("3_wlvs1")] layout_mode = 2 +text = "示例按钮" -[node name="Panel3" type="Panel" parent="Bag/GridContainer"] -custom_minimum_size = Vector2(30, 30) +[node name="Button3" parent="Bag/ScrollContainer/ButtonsVBox" instance=ExtResource("3_wlvs1")] layout_mode = 2 +text = "示例按钮" -[node name="Panel4" type="Panel" parent="Bag/GridContainer"] -custom_minimum_size = Vector2(30, 30) -layout_mode = 2 +[node name="DisplayVBox" type="VBoxContainer" parent="Bag"] +layout_mode = 0 +offset_left = 300.0 +offset_top = 64.0 +offset_right = 440.0 +offset_bottom = 248.0 -[node name="Panel5" type="Panel" parent="Bag/GridContainer"] -custom_minimum_size = Vector2(30, 30) +[node name="TextureRect" type="TextureRect" parent="Bag/DisplayVBox"] +unique_name_in_owner = true +custom_minimum_size = Vector2(100, 100) layout_mode = 2 +size_flags_horizontal = 4 +size_flags_vertical = 4 +texture = ExtResource("4_wlvs1") +expand_mode = 3 -[node name="Panel6" type="Panel" parent="Bag/GridContainer"] -custom_minimum_size = Vector2(30, 30) -layout_mode = 2 - -[node name="Panel7" type="Panel" parent="Bag/GridContainer"] -custom_minimum_size = Vector2(30, 30) -layout_mode = 2 - -[node name="Panel8" type="Panel" parent="Bag/GridContainer"] -custom_minimum_size = Vector2(30, 30) -layout_mode = 2 - -[node name="Panel9" type="Panel" parent="Bag/GridContainer"] -custom_minimum_size = Vector2(30, 30) -layout_mode = 2 - -[node name="Panel10" type="Panel" parent="Bag/GridContainer"] -custom_minimum_size = Vector2(30, 30) -layout_mode = 2 - -[node name="Panel11" type="Panel" parent="Bag/GridContainer"] -custom_minimum_size = Vector2(30, 30) -layout_mode = 2 - -[node name="Panel12" type="Panel" parent="Bag/GridContainer"] -custom_minimum_size = Vector2(30, 30) -layout_mode = 2 - -[node name="Panel13" type="Panel" parent="Bag/GridContainer"] -custom_minimum_size = Vector2(30, 30) -layout_mode = 2 - -[node name="Panel14" type="Panel" parent="Bag/GridContainer"] -custom_minimum_size = Vector2(30, 30) -layout_mode = 2 - -[node name="Panel15" type="Panel" parent="Bag/GridContainer"] -custom_minimum_size = Vector2(30, 30) -layout_mode = 2 - -[node name="Panel16" type="Panel" parent="Bag/GridContainer"] -custom_minimum_size = Vector2(30, 30) +[node name="Content" type="TextEdit" parent="Bag/DisplayVBox"] +unique_name_in_owner = true +custom_minimum_size = Vector2(140, 90) layout_mode = 2 +size_flags_horizontal = 3 +size_flags_vertical = 0 +theme_override_colors/font_readonly_color = Color(0.337438, 0.120804, 0.0401172, 1) +theme_override_font_sizes/font_size = 9 +theme_override_styles/normal = SubResource("StyleBoxFlat_mnmsg") +theme_override_styles/read_only = SubResource("StyleBoxEmpty_wlvs1") +text = "1 +2 +3 +4 +5" +editable = false +scroll_smooth = true diff --git a/scene/prop/prop_bag_button.tscn b/scene/prop/prop_bag_button.tscn new file mode 100644 index 00000000..fa4bac53 --- /dev/null +++ b/scene/prop/prop_bag_button.tscn @@ -0,0 +1,47 @@ +[gd_scene load_steps=7 format=3 uid="uid://wxd25ec3cqyy"] + +[ext_resource type="Texture2D" uid="uid://b343nvvbtpglb" path="res://asset/art/ui/互动提示符/ui 像素版_纯白.png" id="1_cj3ky"] +[ext_resource type="Texture2D" uid="uid://cehulj6qro08v" path="res://asset/art/ui/对话框.png" id="2_4yw4h"] + +[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_rvhvk"] +texture = ExtResource("2_4yw4h") +texture_margin_left = 4.0 +texture_margin_top = 4.0 +texture_margin_right = 4.0 +texture_margin_bottom = 4.0 +region_rect = Rect2(22, 38, 40, 30) +modulate_color = Color(0.877616, 0.877616, 0.877616, 1) + +[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_xo6jf"] +texture = ExtResource("2_4yw4h") +texture_margin_left = 4.0 +texture_margin_top = 4.0 +texture_margin_right = 4.0 +texture_margin_bottom = 4.0 +region_rect = Rect2(22, 38, 40, 30) + +[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_wlvs1"] +texture = ExtResource("2_4yw4h") +texture_margin_left = 4.0 +texture_margin_top = 4.0 +texture_margin_right = 4.0 +texture_margin_bottom = 4.0 +region_rect = Rect2(22, 38, 40, 30) +modulate_color = Color(0.585062, 0.585062, 0.585062, 1) + +[sub_resource type="AtlasTexture" id="AtlasTexture_rvhvk"] +atlas = ExtResource("1_cj3ky") +region = Rect2(732, 546, 45, 48) + +[node name="Button" type="Button"] +custom_minimum_size = Vector2(100, 15) +theme_override_colors/icon_hover_color = Color(1, 1, 1, 0.913725) +theme_override_colors/icon_pressed_color = Color(1, 1, 1, 1) +theme_override_colors/icon_focus_color = Color(1, 1, 1, 0.819608) +theme_override_colors/icon_normal_color = Color(1, 1, 1, 0.6) +theme_override_constants/icon_max_width = 8 +theme_override_styles/focus = SubResource("StyleBoxTexture_rvhvk") +theme_override_styles/hover = SubResource("StyleBoxTexture_xo6jf") +theme_override_styles/normal = SubResource("StyleBoxTexture_wlvs1") +text = "院长的信" +icon = SubResource("AtlasTexture_rvhvk") diff --git a/scene/prop/prop_hud.gd b/scene/prop/prop_hud.gd index 983e071e..51b8ac1f 100644 --- a/scene/prop/prop_hud.gd +++ b/scene/prop/prop_hud.gd @@ -48,6 +48,7 @@ const PROP_CONTAINER_X = 130.0 const PROP_CONTROL_X = 110.0 var items_dict := {} +var important_items_dict = {} # 从配置文件加载 prop items var item_config_res = preload("res://asset/dialogue/item_description.dialogue") var path_prefix = "res://asset/art/prop/" @@ -123,10 +124,27 @@ func _load_items(): if inspect_path: item.inspect_path = path_prefix + inspect_path items_dict[item.key] = item + # 检查是否是重要物品,如果是,则添加到 important_items_dict + if item_config_res.titles.has(item.key): + var important_item_line_id = item_config_res.titles[item.key] + important_items_dict[item.key] = get_import_item_content(important_item_line_id) if not current_line.has("next_id") or current_line.next_id == "end": break current_line = item_config_res.lines[current_line.next_id] +func get_import_item_content(line_id) -> String: + var current_line = item_config_res.lines[line_id] + var content = "" + while current_line: + if current_line.has("text"): + if current_line.has("translation_key"): + content += tr(current_line.translation_key) + "\n" + else: + content += current_line.text + "\n" + if not current_line.has("next_id") or current_line.next_id == "end": + break + current_line = item_config_res.lines[current_line.next_id] + return content func _load_from_archive() -> void: if ArchiveManager.archive: diff --git a/scene/prop/prop_inventory_resource.gd b/scene/prop/prop_inventory_resource.gd index 8b8a9a4b..40a5d6ba 100644 --- a/scene/prop/prop_inventory_resource.gd +++ b/scene/prop/prop_inventory_resource.gd @@ -12,7 +12,15 @@ signal current_item_changed(prop_key: String) current_item_changed.emit(enabled_items[current_index]) else: current_item_changed.emit("") +# 重要物品,不可丢弃,在背包可见 +@export var important_items := [] +# 未查看的重要物品,红点效果 +@export var unviewed_important_items := [] +func enable_important_item(prop_key: String) -> void: + if not important_items.has(prop_key): + important_items.append(prop_key) + unviewed_important_items.append(prop_key) func current_item_key() -> String: if enabled_items.size() == 0: