优化 ux 下的 panel bag note mem;
14
README.md
@ -107,3 +107,17 @@ GroundLoader 加载/切换 Ground 时,分为上下两段转场:
|
||||
每个场景都有一份 GroundArchive 存档,通过 ArchiveManager.archive.ground_archive() 可以获得。
|
||||
|
||||
current_scene 是通过 GroundLoader 加载的,在 ground loader 加载 ground 时,会先更新 archive 的 current scene,然后加载 ground。
|
||||
|
||||
|
||||
# 重大更新日志(功能)
|
||||
|
||||
- Sign 触发机制,图标位置管理
|
||||
- GroundArchive:场景内 namespace 隔离,内部需要保证节点名 unique
|
||||
- 基础节点:Inspectable,Ambush,Note,Interactable,Closeup,Npc
|
||||
- PropHud 切换与点击展示
|
||||
- SignSnapper 拉动机制
|
||||
- ReenterLock 机制
|
||||
- Vibe Sfx & Manager
|
||||
- 转场 process 机制优化:暂停 & sfx 等保持运行
|
||||
- EventManager 控制事件,使用 Event2D 控制绑定关系
|
||||
- Vibe Control 控制氛围情绪音乐
|
BIN
asset/art/scene/c01/s08_书店/l_打光.png
Executable file → Normal file
Before Width: | Height: | Size: 73 KiB After Width: | Height: | Size: 20 KiB |
Before Width: | Height: | Size: 5.1 KiB After Width: | Height: | Size: 33 KiB |
Before Width: | Height: | Size: 195 B After Width: | Height: | Size: 195 B |
@ -3,15 +3,15 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://c8gdny0iewwl2"
|
||||
path="res://.godot/imported/UI显示相关-25.png-0ec1750b98ccd8275203986cc2d3256e.ctex"
|
||||
path="res://.godot/imported/UI显示相关-25.png-83e4a3548aa8c6e221e5e10c325e6697.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/art/ui/prop_and_bag/重要物品/UI显示相关-25.png"
|
||||
dest_files=["res://.godot/imported/UI显示相关-25.png-0ec1750b98ccd8275203986cc2d3256e.ctex"]
|
||||
source_file="res://asset/art/ui/bag/UI显示相关-25.png"
|
||||
dest_files=["res://.godot/imported/UI显示相关-25.png-83e4a3548aa8c6e221e5e10c325e6697.ctex"]
|
||||
|
||||
[params]
|
||||
|
Before Width: | Height: | Size: 173 B After Width: | Height: | Size: 173 B |
@ -3,15 +3,15 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://b10njg374yi6n"
|
||||
path="res://.godot/imported/UI显示相关-28.png-acb9b415b30745e1597105427c9cba78.ctex"
|
||||
path="res://.godot/imported/UI显示相关-28.png-322ab301deb18fae3cef431753fd61c1.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/art/ui/prop_and_bag/重要物品/UI显示相关-28.png"
|
||||
dest_files=["res://.godot/imported/UI显示相关-28.png-acb9b415b30745e1597105427c9cba78.ctex"]
|
||||
source_file="res://asset/art/ui/bag/UI显示相关-28.png"
|
||||
dest_files=["res://.godot/imported/UI显示相关-28.png-322ab301deb18fae3cef431753fd61c1.ctex"]
|
||||
|
||||
[params]
|
||||
|
Before Width: | Height: | Size: 261 B After Width: | Height: | Size: 261 B |
@ -3,15 +3,15 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://1ky8heqxctnf"
|
||||
path="res://.godot/imported/重要物品ui-25.png-407ffd8f3f56be214021fd258f380b89.ctex"
|
||||
path="res://.godot/imported/重要物品ui-25.png-d0369d713aea68aa8dfbfe0167f247df.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/art/ui/prop_and_bag/重要物品/重要物品ui-25.png"
|
||||
dest_files=["res://.godot/imported/重要物品ui-25.png-407ffd8f3f56be214021fd258f380b89.ctex"]
|
||||
source_file="res://asset/art/ui/bag/重要物品ui-25.png"
|
||||
dest_files=["res://.godot/imported/重要物品ui-25.png-d0369d713aea68aa8dfbfe0167f247df.ctex"]
|
||||
|
||||
[params]
|
||||
|
Before Width: | Height: | Size: 239 B After Width: | Height: | Size: 239 B |
@ -3,15 +3,15 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://c8lmwf2at5g3u"
|
||||
path="res://.godot/imported/重要物品ui-26.png-2fde379a811eae74a756263b14c24af0.ctex"
|
||||
path="res://.godot/imported/重要物品ui-26.png-96c27bd0aac67d6ca8323a20cd22a4a3.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/art/ui/prop_and_bag/重要物品/重要物品ui-26.png"
|
||||
dest_files=["res://.godot/imported/重要物品ui-26.png-2fde379a811eae74a756263b14c24af0.ctex"]
|
||||
source_file="res://asset/art/ui/bag/重要物品ui-26.png"
|
||||
dest_files=["res://.godot/imported/重要物品ui-26.png-96c27bd0aac67d6ca8323a20cd22a4a3.ctex"]
|
||||
|
||||
[params]
|
||||
|
Before Width: | Height: | Size: 330 B After Width: | Height: | Size: 330 B |
@ -3,15 +3,15 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://c1l5royi6w0cm"
|
||||
path="res://.godot/imported/重要物品ui-27.png-883293e09ea707222341de684f31a112.ctex"
|
||||
path="res://.godot/imported/重要物品ui-27.png-6792f6d4b6de739866d869f9758ca28b.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/art/ui/prop_and_bag/重要物品/重要物品ui-27.png"
|
||||
dest_files=["res://.godot/imported/重要物品ui-27.png-883293e09ea707222341de684f31a112.ctex"]
|
||||
source_file="res://asset/art/ui/bag/重要物品ui-27.png"
|
||||
dest_files=["res://.godot/imported/重要物品ui-27.png-6792f6d4b6de739866d869f9758ca28b.ctex"]
|
||||
|
||||
[params]
|
||||
|
Before Width: | Height: | Size: 3.1 KiB After Width: | Height: | Size: 3.1 KiB |
@ -3,15 +3,15 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://bhjynxasn03jv"
|
||||
path="res://.godot/imported/重要物品ui-28.png-4ca35ed6f768d32ef4f0f4da9e61b1c0.ctex"
|
||||
path="res://.godot/imported/重要物品ui-28.png-0a92db9e41967a3c3b13be0f16f066a2.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/art/ui/prop_and_bag/重要物品/重要物品ui-28.png"
|
||||
dest_files=["res://.godot/imported/重要物品ui-28.png-4ca35ed6f768d32ef4f0f4da9e61b1c0.ctex"]
|
||||
source_file="res://asset/art/ui/bag/重要物品ui-28.png"
|
||||
dest_files=["res://.godot/imported/重要物品ui-28.png-0a92db9e41967a3c3b13be0f16f066a2.ctex"]
|
||||
|
||||
[params]
|
||||
|
Before Width: | Height: | Size: 36 KiB After Width: | Height: | Size: 36 KiB |
@ -3,15 +3,15 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://cbql1i4hblmt1"
|
||||
path="res://.godot/imported/特写通用遮罩.png-2ddfd83815d8ba406d36dfa56db4c3bf.ctex"
|
||||
path="res://.godot/imported/inspect特写通用遮罩.png-d71efbdf6a70d5f61869c92fccad6650.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/art/ui/prop_and_bag/特写通用遮罩.png"
|
||||
dest_files=["res://.godot/imported/特写通用遮罩.png-2ddfd83815d8ba406d36dfa56db4c3bf.ctex"]
|
||||
source_file="res://asset/art/ui/inspect/inspect特写通用遮罩.png"
|
||||
dest_files=["res://.godot/imported/inspect特写通用遮罩.png-d71efbdf6a70d5f61869c92fccad6650.ctex"]
|
||||
|
||||
[params]
|
||||
|
Before Width: | Height: | Size: 38 KiB After Width: | Height: | Size: 38 KiB |
@ -3,15 +3,15 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://f186lvt5y2ql"
|
||||
path="res://.godot/imported/inspect背景遮罩.png-12d01888bf81d435dd86406a8439f755.ctex"
|
||||
path="res://.godot/imported/inspect背景遮罩.png-6487c5cc89abd54d3577e6cfd1f5c07e.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/art/ui/prop_and_bag/inspect背景遮罩.png"
|
||||
dest_files=["res://.godot/imported/inspect背景遮罩.png-12d01888bf81d435dd86406a8439f755.ctex"]
|
||||
source_file="res://asset/art/ui/inspect/inspect背景遮罩.png"
|
||||
dest_files=["res://.godot/imported/inspect背景遮罩.png-6487c5cc89abd54d3577e6cfd1f5c07e.ctex"]
|
||||
|
||||
[params]
|
||||
|
BIN
asset/art/ui/integrated_view/书签mask.png
Normal file
After Width: | Height: | Size: 145 B |
34
asset/art/ui/integrated_view/书签mask.png.import
Normal file
@ -0,0 +1,34 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://di3sb0mvertwu"
|
||||
path="res://.godot/imported/书签mask.png-bc2c5c5e2ba8cb9a6ae77d50bef909c7.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/art/ui/integrated_view/书签mask.png"
|
||||
dest_files=["res://.godot/imported/书签mask.png-bc2c5c5e2ba8cb9a6ae77d50bef909c7.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
|
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 11 KiB |
@ -3,15 +3,15 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://bv57eyqs03k4y"
|
||||
path="res://.godot/imported/线索笔记内容-29.png-3126a7d0a4da9080aebb9dfade55bf16.ctex"
|
||||
path="res://.godot/imported/线索笔记内容-29.png-95fd43b7ca9099c75bffffa603ae6aa5.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/art/ui/prop_and_bag/线索笔记内容/线索笔记内容-29.png"
|
||||
dest_files=["res://.godot/imported/线索笔记内容-29.png-3126a7d0a4da9080aebb9dfade55bf16.ctex"]
|
||||
source_file="res://asset/art/ui/note/线索笔记内容-29.png"
|
||||
dest_files=["res://.godot/imported/线索笔记内容-29.png-95fd43b7ca9099c75bffffa603ae6aa5.ctex"]
|
||||
|
||||
[params]
|
||||
|
Before Width: | Height: | Size: 22 KiB After Width: | Height: | Size: 22 KiB |
@ -3,15 +3,15 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://blub5hsn6iqit"
|
||||
path="res://.godot/imported/线索笔记内容-30.png-74e04710cf5e7e59f2b1dc2475b441a9.ctex"
|
||||
path="res://.godot/imported/线索笔记内容-30.png-ef097285280ae7bdb089673a8192d47f.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/art/ui/prop_and_bag/线索笔记内容/线索笔记内容-30.png"
|
||||
dest_files=["res://.godot/imported/线索笔记内容-30.png-74e04710cf5e7e59f2b1dc2475b441a9.ctex"]
|
||||
source_file="res://asset/art/ui/note/线索笔记内容-30.png"
|
||||
dest_files=["res://.godot/imported/线索笔记内容-30.png-ef097285280ae7bdb089673a8192d47f.ctex"]
|
||||
|
||||
[params]
|
||||
|
Before Width: | Height: | Size: 28 KiB After Width: | Height: | Size: 28 KiB |
@ -3,15 +3,15 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://beltvxcu7pumi"
|
||||
path="res://.godot/imported/线索笔记内容-31.png-c1b46d1bdf1c06dec7883c73002e812a.ctex"
|
||||
path="res://.godot/imported/线索笔记内容-31.png-38ff27035789ae736b9130cb69e87171.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/art/ui/prop_and_bag/线索笔记内容/线索笔记内容-31.png"
|
||||
dest_files=["res://.godot/imported/线索笔记内容-31.png-c1b46d1bdf1c06dec7883c73002e812a.ctex"]
|
||||
source_file="res://asset/art/ui/note/线索笔记内容-31.png"
|
||||
dest_files=["res://.godot/imported/线索笔记内容-31.png-38ff27035789ae736b9130cb69e87171.ctex"]
|
||||
|
||||
[params]
|
||||
|
Before Width: | Height: | Size: 33 KiB After Width: | Height: | Size: 33 KiB |
@ -3,15 +3,15 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://db1k1t1lc34ut"
|
||||
path="res://.godot/imported/线索笔记内容-32.png-90bd9eaa335210cd65e0ad4ab01a6d77.ctex"
|
||||
path="res://.godot/imported/线索笔记内容-32.png-374901b769b8a2ab0cdbb847132d8b84.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/art/ui/prop_and_bag/线索笔记内容/线索笔记内容-32.png"
|
||||
dest_files=["res://.godot/imported/线索笔记内容-32.png-90bd9eaa335210cd65e0ad4ab01a6d77.ctex"]
|
||||
source_file="res://asset/art/ui/note/线索笔记内容-32.png"
|
||||
dest_files=["res://.godot/imported/线索笔记内容-32.png-374901b769b8a2ab0cdbb847132d8b84.ctex"]
|
||||
|
||||
[params]
|
||||
|
Before Width: | Height: | Size: 38 KiB After Width: | Height: | Size: 38 KiB |
@ -3,15 +3,15 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://ldh387gluo1t"
|
||||
path="res://.godot/imported/线索笔记内容-34.png-04a726a3a1a0051f7a21104308cf2fcd.ctex"
|
||||
path="res://.godot/imported/线索笔记内容-34.png-20678480317ddc66546336dad2cc741c.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/art/ui/prop_and_bag/线索笔记内容/线索笔记内容-34.png"
|
||||
dest_files=["res://.godot/imported/线索笔记内容-34.png-04a726a3a1a0051f7a21104308cf2fcd.ctex"]
|
||||
source_file="res://asset/art/ui/note/线索笔记内容-34.png"
|
||||
dest_files=["res://.godot/imported/线索笔记内容-34.png-20678480317ddc66546336dad2cc741c.ctex"]
|
||||
|
||||
[params]
|
||||
|
Before Width: | Height: | Size: 35 KiB |
@ -1,34 +0,0 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://dwgxa5j6602vv"
|
||||
path="res://.godot/imported/inspect文本衬底蒙版.png-1da8974099d619e860c7c3eea08bc047.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/art/ui/prop_and_bag/inspect文本衬底蒙版.png"
|
||||
dest_files=["res://.godot/imported/inspect文本衬底蒙版.png-1da8974099d619e860c7c3eea08bc047.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
|
Before Width: | Height: | Size: 129 KiB |
@ -1,34 +0,0 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://d11ljcou6mnhj"
|
||||
path="res://.godot/imported/UI显示相关-26.png-bcc92c79f06762a2003be721672da3ea.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/art/ui/prop_and_bag/重要物品/UI显示相关-26.png"
|
||||
dest_files=["res://.godot/imported/UI显示相关-26.png-bcc92c79f06762a2003be721672da3ea.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
|
@ -1,34 +0,0 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://dqepyp4248e38"
|
||||
path="res://.godot/imported/UI显示相关-27.png-d3721a15a619ca69729ac58200e4c4af.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/art/ui/prop_and_bag/重要物品/UI显示相关-27.png"
|
||||
dest_files=["res://.godot/imported/UI显示相关-27.png-d3721a15a619ca69729ac58200e4c4af.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
|
@ -1,34 +0,0 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://0qrjkar4mwb2"
|
||||
path="res://.godot/imported/UI显示相关-29.png-32ab066335997ec9fc38a4ae99d5c617.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/art/ui/prop_and_bag/重要物品/UI显示相关-29.png"
|
||||
dest_files=["res://.godot/imported/UI显示相关-29.png-32ab066335997ec9fc38a4ae99d5c617.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
|
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
@ -3,15 +3,15 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://bcwffsdtv8vq8"
|
||||
path="res://.godot/imported/ui_gallery_item.png-45c2c6ede02b01fad4850965d9c07c65.ctex"
|
||||
path="res://.godot/imported/ui_memory_item.png-10bd2acfa3f979a6013060432df1579c.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/art/ui/style_box/ui_gallery_item.png"
|
||||
dest_files=["res://.godot/imported/ui_gallery_item.png-45c2c6ede02b01fad4850965d9c07c65.ctex"]
|
||||
source_file="res://asset/art/ui/style_box/ui_memory_item.png"
|
||||
dest_files=["res://.godot/imported/ui_memory_item.png-10bd2acfa3f979a6013060432df1579c.ctex"]
|
||||
|
||||
[params]
|
||||
|
BIN
asset/art/ui/ux_panel/书签 1.png
Normal file
After Width: | Height: | Size: 1.0 KiB |
34
asset/art/ui/ux_panel/书签 1.png.import
Normal file
@ -0,0 +1,34 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://bypfs3nrknkuo"
|
||||
path="res://.godot/imported/书签 1.png-4fd69b4dc8997e761cfaad1870d8f56a.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/art/ui/ux_panel/书签 1.png"
|
||||
dest_files=["res://.godot/imported/书签 1.png-4fd69b4dc8997e761cfaad1870d8f56a.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
|
BIN
asset/art/ui/ux_panel/书签 2.png
Normal file
After Width: | Height: | Size: 854 B |
34
asset/art/ui/ux_panel/书签 2.png.import
Normal file
@ -0,0 +1,34 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://cdt7v108hlkqw"
|
||||
path="res://.godot/imported/书签 2.png-96a2eed597c4c905f0ca625e6944438b.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/art/ui/ux_panel/书签 2.png"
|
||||
dest_files=["res://.godot/imported/书签 2.png-96a2eed597c4c905f0ca625e6944438b.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
|
BIN
asset/art/ui/ux_panel/书签 3.png
Normal file
After Width: | Height: | Size: 627 B |
34
asset/art/ui/ux_panel/书签 3.png.import
Normal file
@ -0,0 +1,34 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://demhcu581v80o"
|
||||
path="res://.godot/imported/书签 3.png-37dec8f827f7c72b1b95c59d261e47a0.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/art/ui/ux_panel/书签 3.png"
|
||||
dest_files=["res://.godot/imported/书签 3.png-37dec8f827f7c72b1b95c59d261e47a0.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
|
BIN
asset/art/ui/ux_panel/书签.png
Normal file
After Width: | Height: | Size: 3.2 KiB |
34
asset/art/ui/ux_panel/书签.png.import
Normal file
@ -0,0 +1,34 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://b7b13hgknyh1a"
|
||||
path="res://.godot/imported/书签.png-24c724214900c1a8ab023cc7fdcc35e9.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/art/ui/ux_panel/书签.png"
|
||||
dest_files=["res://.godot/imported/书签.png-24c724214900c1a8ab023cc7fdcc35e9.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
|
BIN
asset/art/ui/ux_panel/书签mask.png
Normal file
After Width: | Height: | Size: 128 B |
16
asset/art/ui/ux_panel/书签mask.png.import
Normal file
@ -0,0 +1,16 @@
|
||||
[remap]
|
||||
|
||||
importer="bitmap"
|
||||
type="BitMap"
|
||||
uid="uid://dmt14und7wyh6"
|
||||
path="res://.godot/imported/书签mask.png-e67dcea64ffaed84aeb461ad3b017365.res"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/art/ui/ux_panel/书签mask.png"
|
||||
dest_files=["res://.godot/imported/书签mask.png-e67dcea64ffaed84aeb461ad3b017365.res"]
|
||||
|
||||
[params]
|
||||
|
||||
create_from=1
|
||||
threshold=0.5
|
BIN
asset/art/ui/ux_panel/信封.png
Normal file
After Width: | Height: | Size: 15 KiB |
34
asset/art/ui/ux_panel/信封.png.import
Normal file
@ -0,0 +1,34 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://daq8qp6klyy11"
|
||||
path="res://.godot/imported/信封.png-832ce9308bf98818cccbfd4d757ca169.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/art/ui/ux_panel/信封.png"
|
||||
dest_files=["res://.godot/imported/信封.png-832ce9308bf98818cccbfd4d757ca169.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
|
BIN
asset/art/ui/ux_panel/信纸.png
Normal file
After Width: | Height: | Size: 41 KiB |
34
asset/art/ui/ux_panel/信纸.png.import
Normal file
@ -0,0 +1,34 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://dbpqrtdkij8dn"
|
||||
path="res://.godot/imported/信纸.png-1cf451e8e6e61dd33409a3321519bdbc.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/art/ui/ux_panel/信纸.png"
|
||||
dest_files=["res://.godot/imported/信纸.png-1cf451e8e6e61dd33409a3321519bdbc.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
|
BIN
asset/art/ui/ux_panel/包.png
Normal file
After Width: | Height: | Size: 16 KiB |
34
asset/art/ui/ux_panel/包.png.import
Normal file
@ -0,0 +1,34 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://b2pev62he8rol"
|
||||
path="res://.godot/imported/包.png-f3927530a6a60f817f07f321085a8688.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/art/ui/ux_panel/包.png"
|
||||
dest_files=["res://.godot/imported/包.png-f3927530a6a60f817f07f321085a8688.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
|
BIN
asset/art/ui/ux_panel/完整背景.png
Normal file
After Width: | Height: | Size: 111 KiB |
34
asset/art/ui/ux_panel/完整背景.png.import
Normal file
@ -0,0 +1,34 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://bi7l47cit2xs"
|
||||
path="res://.godot/imported/完整背景.png-7c1679f362fdb252c978fa502ccb4112.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/art/ui/ux_panel/完整背景.png"
|
||||
dest_files=["res://.godot/imported/完整背景.png-7c1679f362fdb252c978fa502ccb4112.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
|
BIN
asset/art/ui/ux_panel/小蝶笔记.png
Normal file
After Width: | Height: | Size: 48 KiB |
@ -3,15 +3,15 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://dsj3l0baqg1g7"
|
||||
path="res://.godot/imported/小蝶笔记.png-693accd9e1df896b5877648cbebf165b.ctex"
|
||||
path="res://.godot/imported/小蝶笔记.png-436826d495a1aa0c78ac1cf26efeb454.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/art/ui/prop_and_bag/小蝶笔记.png"
|
||||
dest_files=["res://.godot/imported/小蝶笔记.png-693accd9e1df896b5877648cbebf165b.ctex"]
|
||||
source_file="res://asset/art/ui/ux_panel/小蝶笔记.png"
|
||||
dest_files=["res://.godot/imported/小蝶笔记.png-436826d495a1aa0c78ac1cf26efeb454.ctex"]
|
||||
|
||||
[params]
|
||||
|
BIN
asset/art/ui/ux_panel/手.png
Normal file
After Width: | Height: | Size: 7.7 KiB |
34
asset/art/ui/ux_panel/手.png.import
Normal file
@ -0,0 +1,34 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://2bqxg280f1jm"
|
||||
path="res://.godot/imported/手.png-4ad20a102db0d1f7a60b1370a600074b.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/art/ui/ux_panel/手.png"
|
||||
dest_files=["res://.godot/imported/手.png-4ad20a102db0d1f7a60b1370a600074b.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
|
BIN
asset/art/ui/ux_panel/报纸.png
Normal file
After Width: | Height: | Size: 36 KiB |
34
asset/art/ui/ux_panel/报纸.png.import
Normal file
@ -0,0 +1,34 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://cubodis41ijdu"
|
||||
path="res://.godot/imported/报纸.png-7b435ea6f4d5fbdac46b27ddf8c592d5.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/art/ui/ux_panel/报纸.png"
|
||||
dest_files=["res://.godot/imported/报纸.png-7b435ea6f4d5fbdac46b27ddf8c592d5.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
|
BIN
asset/art/ui/ux_panel/有投影的包.png
Normal file
After Width: | Height: | Size: 18 KiB |
34
asset/art/ui/ux_panel/有投影的包.png.import
Normal file
@ -0,0 +1,34 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://b7a032nvoh7nq"
|
||||
path="res://.godot/imported/有投影的包.png-4bc3d94f8fdb837ca65e55b61f2157b5.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/art/ui/ux_panel/有投影的包.png"
|
||||
dest_files=["res://.godot/imported/有投影的包.png-4bc3d94f8fdb837ca65e55b61f2157b5.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
|
BIN
asset/art/ui/ux_panel/眼镜盒.png
Normal file
After Width: | Height: | Size: 15 KiB |
34
asset/art/ui/ux_panel/眼镜盒.png.import
Normal file
@ -0,0 +1,34 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://dctpodedndcuk"
|
||||
path="res://.godot/imported/眼镜盒.png-b803dde1ba91ac3c6a1d04ab0954cc45.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/art/ui/ux_panel/眼镜盒.png"
|
||||
dest_files=["res://.godot/imported/眼镜盒.png-b803dde1ba91ac3c6a1d04ab0954cc45.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
|
BIN
asset/art/ui/ux_panel/笔.png
Normal file
After Width: | Height: | Size: 6.5 KiB |
34
asset/art/ui/ux_panel/笔.png.import
Normal file
@ -0,0 +1,34 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://tjnihdc4hrqq"
|
||||
path="res://.godot/imported/笔.png-a6894a78f109d03e0637872786a1e725.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/art/ui/ux_panel/笔.png"
|
||||
dest_files=["res://.godot/imported/笔.png-a6894a78f109d03e0637872786a1e725.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
|
BIN
asset/art/ui/ux_panel/笔记本.png
Normal file
After Width: | Height: | Size: 12 KiB |
34
asset/art/ui/ux_panel/笔记本.png.import
Normal file
@ -0,0 +1,34 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://1gilnschwbdg"
|
||||
path="res://.godot/imported/笔记本.png-28a9f40c8ba1ecc613ac22de1e030803.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/art/ui/ux_panel/笔记本.png"
|
||||
dest_files=["res://.godot/imported/笔记本.png-28a9f40c8ba1ecc613ac22de1e030803.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
|
BIN
asset/art/ui/ux_panel/背景.png
Normal file
After Width: | Height: | Size: 18 KiB |
34
asset/art/ui/ux_panel/背景.png.import
Normal file
@ -0,0 +1,34 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://xtjqf3k3btej"
|
||||
path="res://.godot/imported/背景.png-cfc1d1bedc8191efa1dffa37ad9eddba.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/art/ui/ux_panel/背景.png"
|
||||
dest_files=["res://.godot/imported/背景.png-cfc1d1bedc8191efa1dffa37ad9eddba.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
|
BIN
asset/art/ui/ux_panel/背景眼镜.png
Normal file
After Width: | Height: | Size: 3.9 KiB |
34
asset/art/ui/ux_panel/背景眼镜.png.import
Normal file
@ -0,0 +1,34 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://b5t6ttoeq6hu8"
|
||||
path="res://.godot/imported/背景眼镜.png-95568eca6fc2a7c19721617573138277.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/art/ui/ux_panel/背景眼镜.png"
|
||||
dest_files=["res://.godot/imported/背景眼镜.png-95568eca6fc2a7c19721617573138277.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
|
BIN
asset/art/ui/ux_panel/船票.png
Normal file
After Width: | Height: | Size: 20 KiB |
34
asset/art/ui/ux_panel/船票.png.import
Normal file
@ -0,0 +1,34 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://5lhknod5posb"
|
||||
path="res://.godot/imported/船票.png-cda7ea76be6f8cbdeb8314a12d85caeb.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/art/ui/ux_panel/船票.png"
|
||||
dest_files=["res://.godot/imported/船票.png-cda7ea76be6f8cbdeb8314a12d85caeb.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
|
BIN
asset/audio/sfx/交互/角色/sfx_哼歌.ogg
Normal file
19
asset/audio/sfx/交互/角色/sfx_哼歌.ogg.import
Normal file
@ -0,0 +1,19 @@
|
||||
[remap]
|
||||
|
||||
importer="oggvorbisstr"
|
||||
type="AudioStreamOggVorbis"
|
||||
uid="uid://bhaws2ungqaf5"
|
||||
path="res://.godot/imported/sfx_哼歌.ogg-96ef73fb9fbe448c092025e1c0d413ed.oggvorbisstr"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/audio/sfx/交互/角色/sfx_哼歌.ogg"
|
||||
dest_files=["res://.godot/imported/sfx_哼歌.ogg-96ef73fb9fbe448c092025e1c0d413ed.oggvorbisstr"]
|
||||
|
||||
[params]
|
||||
|
||||
loop=false
|
||||
loop_offset=0
|
||||
bpm=0
|
||||
beat_count=0
|
||||
bar_beats=4
|
BIN
asset/audio/专用/衔蝶_主菜单music剪辑人声版.wav
Normal file
24
asset/audio/专用/衔蝶_主菜单music剪辑人声版.wav.import
Normal file
@ -0,0 +1,24 @@
|
||||
[remap]
|
||||
|
||||
importer="wav"
|
||||
type="AudioStreamWAV"
|
||||
uid="uid://b3b4a6nm8557i"
|
||||
path="res://.godot/imported/衔蝶_主菜单music剪辑人声版.wav-fde4ebb8341918b52f6eead5d36926b1.sample"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/audio/专用/衔蝶_主菜单music剪辑人声版.wav"
|
||||
dest_files=["res://.godot/imported/衔蝶_主菜单music剪辑人声版.wav-fde4ebb8341918b52f6eead5d36926b1.sample"]
|
||||
|
||||
[params]
|
||||
|
||||
force/8_bit=false
|
||||
force/mono=false
|
||||
force/max_rate=false
|
||||
force/max_rate_hz=44100
|
||||
edit/trim=false
|
||||
edit/normalize=false
|
||||
edit/loop_mode=0
|
||||
edit/loop_begin=0
|
||||
edit/loop_end=-1
|
||||
compress/mode=2
|
@ -25,5 +25,5 @@ c02_保卫科花名册3,二零一二 张文开,,,
|
||||
c02_保卫科花名册4,二零一三 方启钊 方小蝉,,,
|
||||
c02_保卫科花名册5,三零一二(看不清),,,
|
||||
c02_保卫科花名册6,三零一三(看不清),,,
|
||||
c02_保卫科花名册7,墙里有脏东西!,,,
|
||||
c02_保卫科花名册8,把我的鞋子拿给老鼠,引开那个疯男人!,,,
|
||||
c02_保卫科花名册7,把我的鞋子拿给老鼠,老鼠会引开那个疯男人,,,
|
||||
c02_保卫科花名册8,不要相信墙里的东西!,,,
|
||||
|
|
@ -39,7 +39,8 @@
|
||||
|
||||
三零一二(看不清) [ID:c02_保卫科花名册5]
|
||||
三零一三(看不清) [ID:c02_保卫科花名册6]
|
||||
墙里有脏东西! [ID:c02_保卫科花名册7]
|
||||
把我的鞋子拿给老鼠,引开那个疯男人! [ID:c02_保卫科花名册8]
|
||||
把我的鞋子拿给老鼠,老鼠会引开那个疯男人 [ID:c02_保卫科花名册7]
|
||||
不要相信墙里的东西! [ID:c02_保卫科花名册8]
|
||||
=> END
|
||||
|
||||
|
||||
|
@ -12,9 +12,15 @@ setting_画册,画册(G),,,,,
|
||||
notes_干掉的血迹,干掉的血迹,,,,,
|
||||
c02_瞎子卧室_血脚印,这画上的脚印和刚刚看到的一样。,,,,,
|
||||
prop_奇怪的肉_说明,,,,,,
|
||||
bag_tab_日志,笔记,,,,,
|
||||
index_新游戏,新游戏,,,,,New Game
|
||||
index_继续游戏,继续游戏,,,,,Resume
|
||||
index_退出游戏,退出游戏,,,,,Exit
|
||||
ux_panel_继续,继续,,,,,
|
||||
ux_panel_笔记,笔记,,,,,
|
||||
ux_panel_设置,设置,,,,,
|
||||
ux_panel_返回主菜单,返回主菜单,,,,,
|
||||
ux_panel_退出,退出,,,,,
|
||||
setting_总音量,总音量,,,,,Main Volume
|
||||
setting_音效音量,音效音量,,,,,SFX Volume
|
||||
setting_对话音量,对话音量,,,,,Dialogue Volume
|
||||
@ -27,7 +33,8 @@ setting_退出,保存并退出,,,,,Save & Exit
|
||||
setting_日志,笔记(B),,,,,Open the Log
|
||||
setting_记忆,记忆(G),,,,,
|
||||
ui_秒,秒,,,,,S
|
||||
bag_tab_日志,笔记,,,,,
|
||||
bag_tab_笔记,线索,,,,,
|
||||
bag_tab_物品,物件,,,,,
|
||||
bag_tab_记忆,记忆,,,,,
|
||||
ui_saved_all,已保存所有数据,,,,,All the data have been saved
|
||||
ui_new_archive,已创建新存档,,,,,A new archive has been created
|
||||
|
|
@ -4,6 +4,12 @@
|
||||
继续游戏[ID:index_继续游戏]
|
||||
退出游戏[ID:index_退出游戏]
|
||||
|
||||
继续 [ID:ux_panel_继续]
|
||||
笔记 [ID:ux_panel_笔记]
|
||||
设置 [ID:ux_panel_设置]
|
||||
返回主菜单 [ID:ux_panel_返回主菜单]
|
||||
退出 [ID:ux_panel_退出]
|
||||
|
||||
总音量[ID:setting_总音量]
|
||||
音效音量[ID:setting_音效音量]
|
||||
对话音量[ID:setting_对话音量]
|
||||
@ -17,7 +23,9 @@
|
||||
记忆(G)[ID:setting_记忆]
|
||||
秒 [ID:ui_秒]
|
||||
|
||||
笔记[ID:bag_tab_日志]
|
||||
|
||||
线索[ID:bag_tab_笔记]
|
||||
物件[ID:bag_tab_物品]
|
||||
记忆[ID:bag_tab_记忆]
|
||||
|
||||
已保存所有数据 [ID:ui_saved_all]
|
||||
@ -221,7 +229,7 @@
|
||||
没时间浪费了!想想办法救出小蝉... [ID:c02_点火前阻止右移]
|
||||
=> END
|
||||
|
||||
~ Gallery
|
||||
~ Memory
|
||||
偷听对话[ID:g_偷听对话]
|
||||
疯子看井[ID:g_疯子看井]
|
||||
=> END
|
||||
|
@ -1433,7 +1433,7 @@ animations = [{
|
||||
"duration": 1.0,
|
||||
"texture": ExtResource("24_ri043")
|
||||
}],
|
||||
"loop": true,
|
||||
"loop": false,
|
||||
"name": &"c00_吕萍_记笔记_right",
|
||||
"speed": 8.0
|
||||
}, {
|
||||
|
@ -130,12 +130,7 @@ Button/styles/pressed = SubResource("StyleBoxFlat_d5rks")
|
||||
OptionButton/font_sizes/font_size = 10
|
||||
PanelContainer/styles/panel = SubResource("StyleBoxTexture_5sc16")
|
||||
PopupMenu/font_sizes/font_size = 16
|
||||
bag_button/base_type = &"Button"
|
||||
bag_button/styles/diabled = null
|
||||
bag_button/styles/focus = null
|
||||
bag_button/styles/hover = null
|
||||
bag_button/styles/normal = null
|
||||
bag_button/styles/pressed = null
|
||||
bag_tab_btn/base_type = &"TextureButton"
|
||||
empty_panel_container/base_type = &"PanelContainer"
|
||||
empty_panel_container/styles/panel = SubResource("StyleBoxEmpty_ujvfm")
|
||||
main_menu_button/base_type = &"Button"
|
||||
|
@ -1,20 +0,0 @@
|
||||
class_name GameEvent extends Resource
|
||||
|
||||
# * 事件&剧情管理器: player / release / debug 事件,触发者:玩家/系统(系统触发意味着进入 CG)
|
||||
# * 事件定义:「通变之谓事」
|
||||
# * 事件发送机制:玩家进行特定操作后,发送事件进度(开始(注意到),尝试&进度,完成:成功or失败)
|
||||
# * 发送内容
|
||||
# * 时间点:玩家现实时间(系统时间),游戏时长(时间戳),章节剧情时间点(事件编号)
|
||||
# * 地点:场景编号,位置坐标
|
||||
# * 实体:道具/NPC/部署点
|
||||
# * 激发器类型:地图区域(手动部署) / 玩家特定操作(自动发送)/ 实体信号(监听玩家特定操作/状态变化)
|
||||
# * 事件订阅机制:订阅开始/进度/成功/失败,触发特定响应
|
||||
# * 消费器能力:执行 CG(锁定/无锁定,剧本/特效) / 执行实体变化脚本(赠送/消耗/状态变化)
|
||||
# * 保存与加载
|
||||
@export var packed_time: PackedTime
|
||||
@export var ground: String
|
||||
@export var ground_position: Vector2
|
||||
@export var entity: String
|
||||
@export var entity_action: String
|
||||
@export var need_to_save := false
|
||||
@export var extra_data = {}
|
@ -1 +0,0 @@
|
||||
uid://cupmim4vss864
|
@ -1,40 +0,0 @@
|
||||
class_name GameEventMatcher extends Resource
|
||||
|
||||
# match event under certain conditions
|
||||
|
||||
# regex matcher, "[chapter]_[section]", * means any
|
||||
# e.g. 3_* means any section in chapter 3
|
||||
# empty means any ground
|
||||
@export var grounds: Array[String]
|
||||
# can't be empty
|
||||
@export var entity: String
|
||||
# empty means any action
|
||||
@export var entity_actions: Array[String]
|
||||
|
||||
|
||||
# check if the event matches the conditions
|
||||
func match(event: GameEvent) -> bool:
|
||||
if !entity or entity != event.entity:
|
||||
return false
|
||||
if entity_actions.size() > 0 and !entity_actions.has(event.entity_action):
|
||||
return false
|
||||
if grounds.size() > 0:
|
||||
var chapter := str(event.packed_time.chapter)
|
||||
var section := str(event.packed_time.section)
|
||||
var matched := false
|
||||
for ground_matcher in grounds:
|
||||
# regex match
|
||||
var parts = ground_matcher.split("_")
|
||||
if parts.size() != 2:
|
||||
continue
|
||||
var chapter_matcher = parts[0].strip_edges()
|
||||
var section_matcher = parts[1].strip_edges()
|
||||
if (
|
||||
(chapter_matcher == "*" or chapter_matcher == chapter)
|
||||
and (section_matcher == "*" or section_matcher == section)
|
||||
):
|
||||
matched = true
|
||||
break
|
||||
if !matched:
|
||||
return false
|
||||
return true
|
@ -1,58 +0,0 @@
|
||||
[gd_resource type="Theme" load_steps=14 format=3 uid="uid://ro8r1wa1bvua"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://bcwffsdtv8vq8" path="res://asset/art/ui/style_box/ui_gallery_item.png" id="1_yv50c"]
|
||||
[ext_resource type="FontFile" uid="uid://dr8bp6p7byb37" path="res://asset/font/字体/方正楷体简体.TTF" id="2_i3fde"]
|
||||
|
||||
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_f06v1"]
|
||||
texture = ExtResource("1_yv50c")
|
||||
modulate_color = Color(0.892756, 0.892756, 0.892756, 1)
|
||||
|
||||
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_r77y1"]
|
||||
texture = ExtResource("1_yv50c")
|
||||
modulate_color = Color(0.783523, 0.783523, 0.783523, 1)
|
||||
|
||||
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_508w1"]
|
||||
texture = ExtResource("1_yv50c")
|
||||
modulate_color = Color(0, 0, 0, 1)
|
||||
|
||||
[sub_resource type="CompressedTexture2D" id="CompressedTexture2D_adjiu"]
|
||||
load_path = "res://.godot/imported/ui_gallery_item.png-45c2c6ede02b01fad4850965d9c07c65.ctex"
|
||||
|
||||
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_vsh8q"]
|
||||
texture = SubResource("CompressedTexture2D_adjiu")
|
||||
|
||||
[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_aypwd"]
|
||||
|
||||
[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_yv50c"]
|
||||
|
||||
[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_i3fde"]
|
||||
|
||||
[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_drjmf"]
|
||||
|
||||
[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_8mlms"]
|
||||
|
||||
[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_ai6wi"]
|
||||
|
||||
[resource]
|
||||
default_font = ExtResource("2_i3fde")
|
||||
default_font_size = 9
|
||||
Button/colors/font_color = Color(0, 0, 0, 1)
|
||||
Button/styles/focus = SubResource("StyleBoxTexture_f06v1")
|
||||
Button/styles/hover = SubResource("StyleBoxTexture_r77y1")
|
||||
Button/styles/normal = SubResource("StyleBoxTexture_508w1")
|
||||
Button/styles/pressed = SubResource("StyleBoxTexture_vsh8q")
|
||||
Label/colors/font_color = Color(0, 0, 0, 1)
|
||||
Label/constants/line_spacing = 1
|
||||
Label/font_sizes/font_size = 8
|
||||
PanelContainer/styles/panel = SubResource("StyleBoxEmpty_aypwd")
|
||||
tab_btn/base_type = &"Button"
|
||||
tab_btn/colors/font_color = Color(0, 0, 0, 1)
|
||||
tab_btn/colors/font_disabled_color = Color(0, 0, 0, 1)
|
||||
tab_btn/colors/font_focus_color = Color(0, 0, 0, 1)
|
||||
tab_btn/colors/font_hover_color = Color(0, 0, 0, 1)
|
||||
tab_btn/colors/font_pressed_color = Color(0, 0, 0, 1)
|
||||
tab_btn/styles/disabled = SubResource("StyleBoxEmpty_yv50c")
|
||||
tab_btn/styles/focus = SubResource("StyleBoxEmpty_i3fde")
|
||||
tab_btn/styles/hover = SubResource("StyleBoxEmpty_drjmf")
|
||||
tab_btn/styles/normal = SubResource("StyleBoxEmpty_8mlms")
|
||||
tab_btn/styles/pressed = SubResource("StyleBoxEmpty_ai6wi")
|
34
config/memory_item_theme.tres
Normal file
@ -0,0 +1,34 @@
|
||||
[gd_resource type="Theme" load_steps=8 format=3 uid="uid://ro8r1wa1bvua"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://bcwffsdtv8vq8" path="res://asset/art/ui/style_box/ui_memory_item.png" id="1_chall"]
|
||||
[ext_resource type="FontFile" uid="uid://dr8bp6p7byb37" path="res://asset/font/字体/方正楷体简体.TTF" id="2_kwgh2"]
|
||||
|
||||
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_f06v1"]
|
||||
texture = ExtResource("1_chall")
|
||||
modulate_color = Color(0.892756, 0.892756, 0.892756, 1)
|
||||
|
||||
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_r77y1"]
|
||||
texture = ExtResource("1_chall")
|
||||
modulate_color = Color(0.783523, 0.783523, 0.783523, 1)
|
||||
|
||||
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_508w1"]
|
||||
texture = ExtResource("1_chall")
|
||||
modulate_color = Color(0, 0, 0, 1)
|
||||
|
||||
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_vsh8q"]
|
||||
texture = ExtResource("1_chall")
|
||||
|
||||
[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_aypwd"]
|
||||
|
||||
[resource]
|
||||
default_font = ExtResource("2_kwgh2")
|
||||
default_font_size = 9
|
||||
Button/colors/font_color = Color(0, 0, 0, 1)
|
||||
Button/styles/focus = SubResource("StyleBoxTexture_f06v1")
|
||||
Button/styles/hover = SubResource("StyleBoxTexture_r77y1")
|
||||
Button/styles/normal = SubResource("StyleBoxTexture_508w1")
|
||||
Button/styles/pressed = SubResource("StyleBoxTexture_vsh8q")
|
||||
Label/colors/font_color = Color(0, 0, 0, 1)
|
||||
Label/constants/line_spacing = 1
|
||||
Label/font_sizes/font_size = 8
|
||||
PanelContainer/styles/panel = SubResource("StyleBoxEmpty_aypwd")
|
@ -14,7 +14,7 @@ static var user_root_dir := "user://data/" # must end with "/"
|
||||
static var archive_dir := "user://data/archives/"
|
||||
static var archive_prefix := "save"
|
||||
|
||||
const CURRENT_VERSION = 2
|
||||
const CURRENT_VERSION = 3
|
||||
|
||||
var archives := {}
|
||||
var autosave_timer := Timer.new()
|
||||
|
@ -3,8 +3,8 @@ class_name AssembledArchive extends Resource
|
||||
@export var version: int #存档版本
|
||||
@export var archive_id := 0
|
||||
# TODO: 注意设置游戏起点
|
||||
@export var entrance_portal := "left"
|
||||
@export var current_scene := "c01_s05":
|
||||
@export var entrance_portal := &"left"
|
||||
@export var current_scene := &"c01_s05":
|
||||
set(val):
|
||||
current_scene = val
|
||||
if val and val.length() != 7:
|
||||
@ -32,11 +32,13 @@ class_name AssembledArchive extends Resource
|
||||
@export var created_time := "2024-12-24 00:00:00"
|
||||
|
||||
# 全局参数
|
||||
@export var global_data_dict := {}
|
||||
@export var global_data_dict := {} as Dictionary[StringName, Variant]
|
||||
# 不同场景的地面物品状态存档
|
||||
@export var ground_archives = {}
|
||||
@export var ground_archives := {} as Dictionary[StringName, GroundArchive]
|
||||
# # true 为匿名,false 非匿名
|
||||
# @export var npc_anonymous_states = {}
|
||||
@export var npc_anonymous_states := {} as Dictionary[StringName, bool]
|
||||
# event 发生状态
|
||||
@export var event_stage := {} as Dictionary[StringName, int]
|
||||
# 玩家跑步锁定状态,默认为 true
|
||||
@export var player_running_locked := true
|
||||
# prop hud 显示道具
|
||||
|
@ -3,4 +3,5 @@
|
||||
[ext_resource type="Script" uid="uid://dwae8qisko2qp" path="res://manager/audio_manager/audio_manager.gd" id="1_8y63p"]
|
||||
|
||||
[node name="AudioManager" type="Node"]
|
||||
process_mode = 3
|
||||
script = ExtResource("1_8y63p")
|
||||
|
@ -9,13 +9,11 @@ const RES_FILE_FORMAT = ".tres"
|
||||
## layers
|
||||
# 设置
|
||||
const CANVAS_LAYER_SETTINGS = 30
|
||||
# bag
|
||||
const CANVAS_LAYER_BAG = 25
|
||||
# note
|
||||
const CANVAS_LAYER_NOTE = 25
|
||||
# dialog
|
||||
const CANVAS_LAYER_DIALOG = 24
|
||||
# gallery
|
||||
const CANVAS_LAYER_GALLERY_CARD = 23
|
||||
const CANVAS_LAYER_GALLERY = 22
|
||||
const CANVAS_LAYER_UX_PANEL = 22
|
||||
# main 场景的 UI 层(prop hud、上下mask、notification)
|
||||
const CANVAS_LAYER_UI = 21
|
||||
# 道具 inspector(prop/local)
|
||||
|
41
manager/event_manager/event2d.gd
Normal file
@ -0,0 +1,41 @@
|
||||
extends Node2D
|
||||
class_name Event2D
|
||||
|
||||
# 前置依赖事件,为空时意味着无前置事件
|
||||
@export var pre_event: String
|
||||
# 当前事件
|
||||
@export var event: String
|
||||
|
||||
var prev_stage := 0
|
||||
var stage := 0
|
||||
|
||||
|
||||
func _ready() -> void:
|
||||
stage = EventManager.get_stage(event)
|
||||
if pre_event:
|
||||
prev_stage = EventManager.get_stage(pre_event)
|
||||
SceneManager.ground_ready.connect(_on_ground_ready)
|
||||
EventManager.stage_updated.connect(_on_global_stage_updated)
|
||||
|
||||
|
||||
func _on_global_stage_updated(e: StringName, s: int):
|
||||
if e == pre_event:
|
||||
prev_stage = s
|
||||
print("[Event2D] Pre-event stage updated: %s, stage: %s" % [pre_event, prev_stage])
|
||||
_on_pre_stage_updated()
|
||||
elif e == event:
|
||||
stage = s
|
||||
print("[Event2D] Event stage updated: %s, stage: %s" % [event, stage])
|
||||
_on_stage_updated()
|
||||
|
||||
|
||||
func _on_ground_ready(ground: Ground2D):
|
||||
pass
|
||||
|
||||
|
||||
func _on_pre_stage_updated():
|
||||
pass
|
||||
|
||||
|
||||
func _on_stage_updated():
|
||||
pass
|
@ -1,45 +1,45 @@
|
||||
extends Node
|
||||
|
||||
# # 事件注册表
|
||||
# # { entity: [MatcherConsumer] }
|
||||
# var _event_registry: Dictionary = {}
|
||||
signal stage_updated(event_name: StringName, stage: int)
|
||||
|
||||
|
||||
# class MatcherConsumer:
|
||||
# extends RefCounted
|
||||
# var matcher: GameEventMatcher
|
||||
# var consumer: Callable
|
||||
|
||||
# func _init(m: GameEventMatcher, c: Callable) -> void:
|
||||
# self.matcher = m
|
||||
# self.consumer = c
|
||||
func get_stage(event_name: StringName) -> int:
|
||||
if not ArchiveManager.archive or ArchiveManager.archive.event_stage == null:
|
||||
printerr("[EventManager] Archive or event_stage is null.")
|
||||
return 0
|
||||
var val = ArchiveManager.archive.event_stage.get(event_name, 0)
|
||||
return val
|
||||
|
||||
|
||||
# # 注册事件
|
||||
# func register_event_matcher(event_matcher: GameEventMatcher, consumer: Callable) -> void:
|
||||
# if !event_matcher.entity:
|
||||
# return
|
||||
# var matcher_consumer = MatcherConsumer.new(event_matcher, consumer)
|
||||
# if event_matcher.entity not in _event_registry:
|
||||
# _event_registry[event_matcher.entity] = []
|
||||
# _event_registry[event_matcher.entity].append(matcher_consumer)
|
||||
# default 为 0,首次更新为 1
|
||||
func set_stage(event_name: StringName, stage := 1) -> void:
|
||||
if not ArchiveManager.archive or ArchiveManager.archive.event_stage == null:
|
||||
printerr("[EventManager] Archive or event_stage is null.")
|
||||
return
|
||||
ArchiveManager.archive.event_stage[event_name] = stage
|
||||
# print before emit
|
||||
print("[EventManager] Stage updated: %s, stage: %s" % [event_name, stage])
|
||||
stage_updated.emit(event_name, stage)
|
||||
# 如果是 handnote_stage,玩家进行记笔记动作
|
||||
if event_name == "handnote_stage" and SceneManager.get_player().character.begins_with("吕萍"):
|
||||
SceneManager.freeze_player(1.0, 16, true)
|
||||
|
||||
|
||||
# # 触发事件
|
||||
# func trigger_event(event: GameEvent) -> void:
|
||||
# if event.entity not in _event_registry:
|
||||
# return
|
||||
# for matcher_consumer in _event_registry[event.entity]:
|
||||
# # matcher_consumer = matcher_consumer as MatcherConsumer
|
||||
# if matcher_consumer._matcher.match(event):
|
||||
# matcher_consumer._consumer.call(event)
|
||||
# if event.need_to_save:
|
||||
# _save_event(event)
|
||||
# 仅在设置的 stage > 当前 stage 时更新,相等或小于时不更新
|
||||
func set_stage_if_greater(event_name: StringName, stage := 1) -> void:
|
||||
var current_stage = get_stage(event_name)
|
||||
if stage > current_stage:
|
||||
set_stage(event_name, stage)
|
||||
|
||||
|
||||
# func _save_event(event) -> void:
|
||||
# # 保存事件
|
||||
# pass
|
||||
# stage 最大 99999
|
||||
func next_staged(event_name: StringName, stage_max := 99999) -> void:
|
||||
var current_stage = get_stage(event_name)
|
||||
if current_stage < stage_max:
|
||||
set_stage(event_name, current_stage + 1)
|
||||
|
||||
|
||||
##### 其他事件 #####
|
||||
|
||||
|
||||
func prop_interacted(e_name, prop_key, interacted_times) -> void:
|
||||
|
@ -7,7 +7,11 @@ enum VIBE {
|
||||
TOUCHING,
|
||||
}
|
||||
|
||||
@export var first_entered = true
|
||||
# 从 ground loader 控制该信号
|
||||
signal ground_ready(ground: Ground2D)
|
||||
signal ground_start(ground: Ground2D)
|
||||
|
||||
var first_entered = true
|
||||
|
||||
|
||||
func _ready():
|
||||
@ -325,18 +329,34 @@ func enter_main_scene():
|
||||
get_tree().paused = false
|
||||
|
||||
|
||||
var prop_bag_scene = preload("res://scene/prop/prop_bag.tscn")
|
||||
#### UX: settings; panel: note, bag, memory ####
|
||||
|
||||
var panel_scene = preload("uid://ddlwnsccsmr8u")
|
||||
|
||||
|
||||
func show_panel():
|
||||
get_tree().current_scene.add_child(panel_scene.instantiate())
|
||||
|
||||
|
||||
var note_scene = preload("uid://cy7wrrsm8e04f")
|
||||
|
||||
|
||||
func show_note():
|
||||
get_tree().current_scene.add_child(note_scene.instantiate())
|
||||
|
||||
|
||||
var bag_scene = preload("uid://b6gbolo1o7wdf")
|
||||
|
||||
|
||||
func show_bag():
|
||||
get_tree().current_scene.add_child(prop_bag_scene.instantiate())
|
||||
get_tree().current_scene.add_child(bag_scene.instantiate())
|
||||
|
||||
|
||||
var gallery_scene = preload("uid://gfkdh8pqhixn")
|
||||
var memory_scene = preload("uid://gfkdh8pqhixn")
|
||||
|
||||
|
||||
func show_gallery():
|
||||
get_tree().current_scene.add_child(gallery_scene.instantiate())
|
||||
func show_memory():
|
||||
get_tree().current_scene.add_child(memory_scene.instantiate())
|
||||
|
||||
|
||||
var settings_scene = preload("uid://beok2r6fgburn")
|
||||
@ -346,12 +366,13 @@ func show_settings():
|
||||
get_tree().current_scene.add_child(settings_scene.instantiate())
|
||||
|
||||
|
||||
#### 游戏场景树暂停计数器,设置、gallery、bag 等菜单都会导致 pause
|
||||
#### 游戏场景树暂停计数器,设置、memory、bag 等菜单都会导致 pause
|
||||
var pause_counter := 0
|
||||
|
||||
|
||||
func toggle_pause_counter(plus := true):
|
||||
pause_counter += 1 if plus else -1
|
||||
print("SceneTree pause_counter: ", pause_counter)
|
||||
get_tree().paused = pause_counter > 0
|
||||
|
||||
|
||||
|