第二章线索笔记

This commit is contained in:
cakipaul 2025-08-13 00:37:33 +08:00
parent e5f84e32ec
commit 6214c4714a
25 changed files with 108 additions and 31 deletions

View File

@ -1,8 +1,8 @@
[gd_scene load_steps=4 format=3 uid="uid://ccws15temu1l7"]
[ext_resource type="Script" uid="uid://16itkrecgwtm" path="res://asset/art/ui/note/aseprite_slice_to_atlas.gd" id="1_74cad"]
[ext_resource type="JSON" path="res://asset/art/ui/note/c02_slices.json" id="2_rv6as"]
[ext_resource type="Texture2D" uid="uid://drijblepnhhsw" path="res://asset/art/ui/note/c02_slices.png" id="3_5ej8b"]
[ext_resource type="JSON" path="res://asset/art/ui/note/c03_slices.json" id="2_rv6as"]
[ext_resource type="Texture2D" uid="uid://coornj7bkofw1" path="res://asset/art/ui/note/c03_slices.png" id="3_5ej8b"]
[node name="AsepriteSliceToAtlas" type="Node2D"]
script = ExtResource("1_74cad")

Binary file not shown.

View File

@ -11,20 +11,14 @@
"meta": {
"app": "https://www.aseprite.org/",
"version": "1.3.8.1-arm64",
"image": "c03_slices.png",
"image": "c03_slices_en.png",
"format": "RGBA8888",
"size": { "w": 2984, "h": 1894 },
"scale": "1",
"slices": [
{ "name": "c02_meat_knockDoor", "color": "#0000ffff", "keys": [{ "frame": 0, "bounds": {"x": 222, "y": 94, "w": 341, "h": 189 } }] },
{ "name": "c02_hand_exchange", "color": "#0000ffff", "keys": [{ "frame": 0, "bounds": {"x": 22, "y": 314, "w": 469, "h": 271 } }] },
{ "name": "c02_musicbox_needPuppet", "color": "#0000ffff", "keys": [{ "frame": 0, "bounds": {"x": 108, "y": 646, "w": 401, "h": 173 } }] },
{ "name": "c02_split_illusionSpace", "color": "#0000ffff", "keys": [{ "frame": 0, "bounds": {"x": 596, "y": 332, "w": 561, "h": 213 } }] },
{ "name": "c02_meat_stopMouse", "color": "#0000ffff", "keys": [{ "frame": 0, "bounds": {"x": 596, "y": 94, "w": 419, "h": 189 } }] },
{ "name": "c02_shoe_giveToMouce", "color": "#0000ffff", "keys": [{ "frame": 0, "bounds": {"x": 1064, "y": 92, "w": 357, "h": 205 } }] },
{ "name": "c02_gate_chain", "color": "#0000ffff", "keys": [{ "frame": 0, "bounds": {"x": 598, "y": 580, "w": 421, "h": 243 } }] },
{ "name": "c02_hand_requireCoin", "color": "#0000ffff", "keys": [{ "frame": 0, "bounds": {"x": 1020, "y": 552, "w": 395, "h": 211 } }] },
{ "name": "c02_xchan_giveHerPuppet", "color": "#0000ffff", "keys": [{ "frame": 0, "bounds": {"x": 1000, "y": 812, "w": 393, "h": 211 } }] },
{ "name": "c02_list_namesAndGoal", "color": "#0000ffff", "keys": [{ "frame": 0, "bounds": {"x": 1026, "y": 1272, "w": 1045, "h": 524 } }] },
{ "name": "c02_xchan_isSheGhost", "color": "#0000ffff", "keys": [{ "frame": 0, "bounds": {"x": 153, "y": 1521, "w": 358, "h": 226 } }] },
{ "name": "c02_blotOut", "color": "#0000ffff", "keys": [{ "frame": 0, "bounds": {"x": 599, "y": 1526, "w": 293, "h": 193 } }] },
@ -32,7 +26,11 @@
{ "name": "c02_road_address", "color": "#0000ffff", "keys": [{ "frame": 0, "bounds": {"x": 2284, "y": 916, "w": 681, "h": 213 } }] },
{ "name": "c02_map_2", "color": "#0000ffff", "keys": [{ "frame": 0, "bounds": {"x": 2211, "y": 1188, "w": 727, "h": 640 } }] },
{ "name": "c02_map_1Left", "color": "#0000ffff", "keys": [{ "frame": 0, "bounds": {"x": 1452, "y": 162, "w": 883, "h": 658 } }] },
{ "name": "c02_map_1Right", "color": "#0000ffff", "keys": [{ "frame": 0, "bounds": {"x": 2409, "y": 447, "w": 460, "h": 364 } }] }
{ "name": "c02_map_1Right", "color": "#0000ffff", "keys": [{ "frame": 0, "bounds": {"x": 2409, "y": 447, "w": 460, "h": 364 } }] },
{ "name": "c03_prop_scissor", "color": "#0000ffff", "keys": [{ "frame": 0, "bounds": {"x": 219, "y": 346, "w": 280, "h": 168 } }] },
{ "name": "c03_prop_tounge", "color": "#0000ffff", "keys": [{ "frame": 0, "bounds": {"x": 522, "y": 346, "w": 283, "h": 169 } }] },
{ "name": "c03_prop_drug", "color": "#0000ffff", "keys": [{ "frame": 0, "bounds": {"x": 827, "y": 347, "w": 275, "h": 167 } }] },
{ "name": "c03_map_3", "color": "#0000ffff", "keys": [{ "frame": 0, "bounds": {"x": 114, "y": 844, "w": 817, "h": 631 } }] }
]
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 97 KiB

After

Width:  |  Height:  |  Size: 102 KiB

View File

@ -1,6 +1,6 @@
[gd_resource type="AtlasTexture" load_steps=2 format=3 uid="uid://b6xwbm3wsef1s"]
[ext_resource type="Texture2D" uid="uid://drijblepnhhsw" path="res://asset/art/ui/note/c02_slices.png" id="1_a0x2j"]
[ext_resource type="Texture2D" uid="uid://coornj7bkofw1" path="res://asset/art/ui/note/c03_slices.png" id="1_a0x2j"]
[resource]
atlas = ExtResource("1_a0x2j")

View File

@ -1,6 +1,6 @@
[gd_resource type="AtlasTexture" load_steps=2 format=3 uid="uid://c50tcer03ydhk"]
[ext_resource type="Texture2D" uid="uid://drijblepnhhsw" path="res://asset/art/ui/note/c02_slices.png" id="1_f76b8"]
[ext_resource type="Texture2D" uid="uid://coornj7bkofw1" path="res://asset/art/ui/note/c03_slices.png" id="1_f76b8"]
[resource]
atlas = ExtResource("1_f76b8")

View File

@ -1,6 +1,6 @@
[gd_resource type="AtlasTexture" load_steps=2 format=3 uid="uid://dynop6kxxbvtl"]
[ext_resource type="Texture2D" uid="uid://drijblepnhhsw" path="res://asset/art/ui/note/c02_slices.png" id="1_egk8x"]
[ext_resource type="Texture2D" uid="uid://coornj7bkofw1" path="res://asset/art/ui/note/c03_slices.png" id="1_egk8x"]
[resource]
atlas = ExtResource("1_egk8x")

View File

@ -1,6 +1,6 @@
[gd_resource type="AtlasTexture" load_steps=2 format=3 uid="uid://q25c37y7k51y"]
[ext_resource type="Texture2D" uid="uid://drijblepnhhsw" path="res://asset/art/ui/note/c02_slices.png" id="1_k5ft1"]
[ext_resource type="Texture2D" uid="uid://coornj7bkofw1" path="res://asset/art/ui/note/c03_slices.png" id="1_k5ft1"]
[resource]
atlas = ExtResource("1_k5ft1")

View File

@ -1,6 +1,6 @@
[gd_resource type="AtlasTexture" load_steps=2 format=3 uid="uid://dtjfjxkqtxq68"]
[ext_resource type="Texture2D" uid="uid://drijblepnhhsw" path="res://asset/art/ui/note/c02_slices.png" id="1_y685c"]
[ext_resource type="Texture2D" uid="uid://coornj7bkofw1" path="res://asset/art/ui/note/c03_slices.png" id="1_y685c"]
[resource]
atlas = ExtResource("1_y685c")

View File

@ -1,6 +1,6 @@
[gd_resource type="AtlasTexture" load_steps=2 format=3 uid="uid://bopric6ffk34x"]
[ext_resource type="Texture2D" uid="uid://drijblepnhhsw" path="res://asset/art/ui/note/c02_slices.png" id="1_xxqwe"]
[ext_resource type="Texture2D" uid="uid://coornj7bkofw1" path="res://asset/art/ui/note/c03_slices.png" id="1_xxqwe"]
[resource]
atlas = ExtResource("1_xxqwe")

View File

@ -1,6 +1,6 @@
[gd_resource type="AtlasTexture" load_steps=2 format=3 uid="uid://dbqjv4ppg4jej"]
[ext_resource type="Texture2D" uid="uid://drijblepnhhsw" path="res://asset/art/ui/note/c02_slices.png" id="1_r08t6"]
[ext_resource type="Texture2D" uid="uid://coornj7bkofw1" path="res://asset/art/ui/note/c03_slices.png" id="1_r08t6"]
[resource]
atlas = ExtResource("1_r08t6")

View File

@ -1,6 +1,6 @@
[gd_resource type="AtlasTexture" load_steps=2 format=3 uid="uid://bfd0i2tro51tp"]
[ext_resource type="Texture2D" uid="uid://drijblepnhhsw" path="res://asset/art/ui/note/c02_slices.png" id="1_2nqcr"]
[ext_resource type="Texture2D" uid="uid://coornj7bkofw1" path="res://asset/art/ui/note/c03_slices.png" id="1_2nqcr"]
[resource]
atlas = ExtResource("1_2nqcr")

View File

@ -1,6 +1,6 @@
[gd_resource type="AtlasTexture" load_steps=2 format=3 uid="uid://dv21xpibobt6u"]
[ext_resource type="Texture2D" uid="uid://drijblepnhhsw" path="res://asset/art/ui/note/c02_slices.png" id="1_xwofv"]
[ext_resource type="Texture2D" uid="uid://coornj7bkofw1" path="res://asset/art/ui/note/c03_slices.png" id="1_xwofv"]
[resource]
atlas = ExtResource("1_xwofv")

View File

@ -1,6 +1,6 @@
[gd_resource type="AtlasTexture" load_steps=2 format=3 uid="uid://d4dc7m2wneehr"]
[ext_resource type="Texture2D" uid="uid://drijblepnhhsw" path="res://asset/art/ui/note/c02_slices.png" id="1_3tkng"]
[ext_resource type="Texture2D" uid="uid://coornj7bkofw1" path="res://asset/art/ui/note/c03_slices.png" id="1_3tkng"]
[resource]
atlas = ExtResource("1_3tkng")

View File

@ -1,6 +1,6 @@
[gd_resource type="AtlasTexture" load_steps=2 format=3 uid="uid://cfesjie0t48n2"]
[ext_resource type="Texture2D" uid="uid://drijblepnhhsw" path="res://asset/art/ui/note/c02_slices.png" id="1_0gy8g"]
[ext_resource type="Texture2D" uid="uid://coornj7bkofw1" path="res://asset/art/ui/note/c03_slices.png" id="1_0gy8g"]
[resource]
atlas = ExtResource("1_0gy8g")

View File

@ -0,0 +1,8 @@
[gd_resource type="AtlasTexture" load_steps=2 format=3 uid="uid://doehawi3ynl1r"]
[ext_resource type="Texture2D" uid="uid://coornj7bkofw1" path="res://asset/art/ui/note/c03_slices.png" id="1_naelb"]
[resource]
atlas = ExtResource("1_naelb")
region = Rect2(114, 844, 817, 631)
filter_clip = true

View File

@ -0,0 +1,8 @@
[gd_resource type="AtlasTexture" load_steps=2 format=3 uid="uid://cl56csmk7dx3n"]
[ext_resource type="Texture2D" uid="uid://coornj7bkofw1" path="res://asset/art/ui/note/c03_slices.png" id="1_mgd4s"]
[resource]
atlas = ExtResource("1_mgd4s")
region = Rect2(827, 347, 275, 167)
filter_clip = true

View File

@ -0,0 +1,8 @@
[gd_resource type="AtlasTexture" load_steps=2 format=3 uid="uid://cy2vpn01302xy"]
[ext_resource type="Texture2D" uid="uid://coornj7bkofw1" path="res://asset/art/ui/note/c03_slices.png" id="1_pv8k5"]
[resource]
atlas = ExtResource("1_pv8k5")
region = Rect2(219, 346, 280, 168)
filter_clip = true

View File

@ -0,0 +1,8 @@
[gd_resource type="AtlasTexture" load_steps=2 format=3 uid="uid://db386t8b8gyev"]
[ext_resource type="Texture2D" uid="uid://coornj7bkofw1" path="res://asset/art/ui/note/c03_slices.png" id="1_os7bw"]
[resource]
atlas = ExtResource("1_os7bw")
region = Rect2(522, 346, 283, 169)
filter_clip = true

Binary file not shown.

Before

Width:  |  Height:  |  Size: 253 KiB

After

Width:  |  Height:  |  Size: 202 KiB

View File

@ -23,5 +23,6 @@ func _setup_node_reference() -> void:
func _on_ground_ready() -> void:
pass
await Util.wait(2.0)
EventManager.set_stage_if_greater("handnote_c03_map_3", 1)

View File

@ -48,7 +48,7 @@ func _on_ground_ready() -> void:
set_data("has_entered", true)
await Util.wait(0.5)
SceneManager.pop_os_with_str("c03_s04_首次进入")
func _on_exit_sort_mahjong_game(arg) -> void:
if arg:
@ -60,7 +60,7 @@ func _on_exit_sort_mahjong_game(arg) -> void:
func _on_exit_cheat_mahjong_game(arg) -> void:
if arg:
EventManager.set_stage_if_greater("c03_mahjong_game", 3)
EventManager.set_stage_if_greater("c03_li_paperwoman", 1)
EventManager.set_stage_if_greater("c03_li_paperwoman", 1)
closeup麻将出千游戏.enabled = false
# 渐隐黑屏3-5s黑屏头痛效果+音效,回到横板后玩家位置动画为坐靠在麻将桌左侧,站起后气泡文字
SceneManager.lock_player()

View File

@ -40,6 +40,7 @@ func _check_if_notify_to_use_prop() -> void:
return
elif SceneManager.has_prop("prop_剪刀"):
SceneManager.pop_center_notification("ui_center_notify_use_prop")
EventManager.set_stage_if_greater("handnote_c03_prop_scissor", 1)
else:
var label = $"Container/RichTextLabel"
label.show()
@ -61,6 +62,7 @@ func _unhandled_input(event: InputEvent) -> void:
var using_scissors = false
# 尝试使用剪刀进行互动
func _try_interact() -> void:
# 纸钱还没拿完
@ -78,7 +80,6 @@ func _try_interact() -> void:
await Util.wait(0.5)
# 飞针
$AnimationPlayer.play("cutting_overhead")
EventManager.set_stage_if_greater("c03_s03_laizi_breath", 2)
# 抖动
Util.shake_layer(self, 0.3)
$"".hide()
@ -91,9 +92,11 @@ func _try_interact() -> void:
# 剪下辫子
func _on_braid_interacted() -> void:
$"Sfx剪刀".play()
EventManager.set_stage_if_greater("c03_s03_laizi_breath", 2)
# 剪刀变为重要物品
SceneManager.disable_prop_item("prop_剪刀")
SceneManager.enable_important_item("prop_剪刀", false)
EventManager.set_stage_if_greater("handnote_c03_prop_scissor", 2)
_braid_cutting_show()

View File

@ -37,8 +37,10 @@ func _display_label(id: int) -> void:
var label
if id == 0:
label = $"求舌头/RichTextLabel"
EventManager.set_stage_if_greater("handnote_c03_prop_tounge", 1)
elif id == 1:
label = $"求药/RichTextLabel"
EventManager.set_stage_if_greater("handnote_c03_prop_drug", 1)
SceneManager.pop_debug_dialog_info("音效", "诡异哑巴音效")
#TODO
$"Sfx诡异的哑巴音效".play()
@ -81,12 +83,13 @@ func _unhandled_input(event: InputEvent) -> void:
var sprite = $"断舌头粘完整"
sprite.show()
sprite.modulate.a = 0.0
# 浆糊可以用两次
SceneManager.disable_prop_item("prop_纸舌头")
EventManager.set_stage_if_greater("handnote_c03_prop_tounge", 3)
EventManager.set_stage_if_greater("c03_li_paperwoman", 2)
create_tween().tween_property(sprite, "modulate:a", 1.0, 1.0)
animation_player.play("give_scissor")
await animation_player.animation_finished
# 浆糊可以用两次
SceneManager.disable_prop_item("prop_纸舌头")
EventManager.set_stage_if_greater("c03_li_paperwoman", 2)
holding = false
return
elif current_stage == 3:
@ -94,10 +97,11 @@ func _unhandled_input(event: InputEvent) -> void:
holding = true
# 给药 -> 2013 钥匙 (prop_2013钥匙)
$"Sfx使用药包".play()
animation_player.play("give_key")
await animation_player.animation_finished
EventManager.set_stage_if_greater("handnote_c03_prop_drug", 3)
SceneManager.disable_prop_item("prop_药包")
EventManager.set_stage_if_greater("c03_li_paperwoman", 4)
animation_player.play("give_key")
await animation_player.animation_finished
holding = false
return
if GlobalConfig.DEBUG:

View File

@ -1,4 +1,4 @@
[gd_scene load_steps=26 format=3 uid="uid://cy7wrrsm8e04f"]
[gd_scene load_steps=30 format=3 uid="uid://cy7wrrsm8e04f"]
[ext_resource type="Script" uid="uid://bkyg34xfhe60p" path="res://scene/ux/note/ux_note.gd" id="1_e61yw"]
[ext_resource type="Texture2D" uid="uid://bi7l47cit2xs" path="res://asset/art/ui/ux_panel/完整背景.png" id="2_1ka1m"]
@ -24,6 +24,10 @@
[ext_resource type="Texture2D" uid="uid://cfrr5118wx6f" path="res://asset/art/ui/note/c02_slices/c02_hand_requireCoin.tres" id="21_x45ak"]
[ext_resource type="Texture2D" uid="uid://dqg5ha6sg60ti" path="res://asset/art/ui/note/c02_slices/c02_xchan_sheKnowsMe.tres" id="22_rkppt"]
[ext_resource type="Texture2D" uid="uid://bs2aus63tgwv1" path="res://asset/art/ui/note/c02_slices/c02_xchan_isSheGhost.tres" id="23_njh4q"]
[ext_resource type="Texture2D" uid="uid://doehawi3ynl1r" path="res://asset/art/ui/note/c03_slices/c03_map_3.tres" id="24_vv1f8"]
[ext_resource type="Texture2D" uid="uid://cl56csmk7dx3n" path="res://asset/art/ui/note/c03_slices/c03_prop_drug.tres" id="25_hw4ys"]
[ext_resource type="Texture2D" uid="uid://cy2vpn01302xy" path="res://asset/art/ui/note/c03_slices/c03_prop_scissor.tres" id="26_iiemy"]
[ext_resource type="Texture2D" uid="uid://db386t8b8gyev" path="res://asset/art/ui/note/c03_slices/c03_prop_tounge.tres" id="27_cd76s"]
[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_j3kdg"]
@ -77,6 +81,7 @@ expand_mode = 5
stretch_mode = 5
[node name="Event_current_chapter_stage" type="Sprite2D" parent="Bag/Book"]
visible = false
position = Vector2(340, 137)
scale = Vector2(0.2, 0.2)
script = ExtResource("5_nk0pj")
@ -345,6 +350,40 @@ event = &"handnote_c02_map_2"
hide_if_on_stage = Array[int]([0, 3])
metadata/_custom_type_script = "uid://c5woj7mivdxrh"
[node name="Event_handnote_c03_map_3" type="Sprite2D" parent="Bag/Book/Event_current_chapter_stage2"]
position = Vector2(425, 395)
texture = ExtResource("24_vv1f8")
script = ExtResource("7_nfxph")
event = &"handnote_c03_map_3"
hide_if_on_stage = Array[int]([0, 3])
[node name="Event_handnote_c03_prop_tounge" type="Sprite2D" parent="Bag/Book/Event_current_chapter_stage2"]
position = Vector2(-390, 440)
texture = ExtResource("27_cd76s")
script = ExtResource("7_nfxph")
event = &"handnote_c03_prop_tounge"
hide_if_on_stage = Array[int]([0, 3])
[node name="Event_handnote_c03_prop_drug" type="Sprite2D" parent="Bag/Book/Event_current_chapter_stage2"]
position = Vector2(-385, 435)
texture = ExtResource("25_hw4ys")
script = ExtResource("7_nfxph")
event = &"handnote_c03_prop_drug"
hide_if_on_stage = Array[int]([0, 3])
[node name="Event_handnote_c03_prop_scissor" type="Sprite2D" parent="Bag/Book/Event_current_chapter_stage2"]
position = Vector2(435, -140)
texture = ExtResource("26_iiemy")
script = ExtResource("7_nfxph")
event = &"handnote_c03_prop_scissor"
hide_if_on_stage = Array[int]([0, 3])
[node name="BlotOut" type="Sprite2D" parent="Bag/Book/Event_current_chapter_stage2/Event_handnote_c03_prop_scissor"]
position = Vector2(-6.40665e-05, -1.62125e-05)
rotation = -0.280488
scale = Vector2(0.759944, 0.918027)
texture = ExtResource("11_dohnv")
[node name="Tabs" parent="Bag" node_paths=PackedStringArray("root") instance=ExtResource("4_7vpan")]
unique_name_in_owner = true
offset_left = 8.0