2025-08-05 13:14:04 +00:00
|
|
|
|
@tool
|
|
|
|
|
extends Event2D
|
|
|
|
|
|
|
|
|
|
# var prev_stage := 0
|
|
|
|
|
# var stage := 0
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
func _ready() -> void:
|
|
|
|
|
super._ready()
|
|
|
|
|
if Engine.is_editor_hint():
|
|
|
|
|
return
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
func _on_global_stage_updated(e: StringName, s: int) -> void:
|
|
|
|
|
super._on_global_stage_updated(e, s)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
func _on_ground_ready(_ground: Ground2D) -> void:
|
|
|
|
|
if stage == 2:
|
|
|
|
|
# 进入演出
|
|
|
|
|
var portal_2_x = $"../portal_2".global_position.x
|
|
|
|
|
SceneManager.get_player().global_position.x = portal_2_x
|
|
|
|
|
_fatty_game_finished_show()
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
func _fatty_game_finished_show() -> void:
|
|
|
|
|
var player = SceneManager.get_player()
|
2025-08-05 14:33:14 +00:00
|
|
|
|
var camera = SceneManager.get_camera_marker()
|
2025-08-05 13:14:04 +00:00
|
|
|
|
SceneManager.lock_player()
|
2025-08-06 12:53:49 +00:00
|
|
|
|
player.set_facing_direction(Vector2.LEFT)
|
2025-08-05 14:33:14 +00:00
|
|
|
|
var monster = $"../棺材怪切肉" as AnimatedSprite2D
|
2025-08-05 13:14:04 +00:00
|
|
|
|
monster.show()
|
2025-08-05 14:33:14 +00:00
|
|
|
|
monster.play("砍桌子")
|
|
|
|
|
var sfx_monster = $"../棺材怪切肉/Sfx棺材怪切肉" as Sfx2D
|
2025-08-06 12:53:49 +00:00
|
|
|
|
#玩家在屠宰间右侧醒来,靠在墙上抬头看左侧不站起,镜头向左移动至长桌,棺材怪正在切桌上的肉块
|
|
|
|
|
# 等待3s,左侧传来小蝉(小女孩)的笑声
|
|
|
|
|
# 棺材怪被吸引,走向左侧缓慢离开
|
|
|
|
|
#(棺材怪开始移动的同时镜头缓缓向右移动至玩家,无需播放玩家起身动作,镜头移回时直接为站立呼吸即可,玩家可以操作)
|
|
|
|
|
# 往左走看到小蝉站在绞肉机前,玩家走近后小蝉消失。
|
|
|
|
|
# fatty_sprite.play("掉下来")
|
|
|
|
|
# await fatty_sprite.animation_finished
|
2025-08-05 14:33:14 +00:00
|
|
|
|
var tween = create_tween()
|
|
|
|
|
tween.tween_property(camera, "force_offset:x", 200.0, 3.0)
|
|
|
|
|
tween.tween_interval(3.0)
|
|
|
|
|
await tween.finished
|
|
|
|
|
# 小孩笑声
|
|
|
|
|
$"Sfx2D小蝉笑声".play()
|
|
|
|
|
await Util.wait(0.5)
|
|
|
|
|
monster.play("地下呼吸帧_准备走路")
|
|
|
|
|
sfx_monster.volume_db = -100.0
|
|
|
|
|
await Util.wait(6.0)
|
|
|
|
|
SceneManager.black_transition()
|
|
|
|
|
await Util.wait(1.0)
|
2025-08-05 13:14:04 +00:00
|
|
|
|
# 进入特写演出
|
|
|
|
|
$"../Closeup绞肉机".display()
|
|
|
|
|
SceneManager.unlock_player()
|
2025-08-05 14:33:14 +00:00
|
|
|
|
camera.force_offset = Vector2.ZERO
|
2025-08-05 13:14:04 +00:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
func _on_pre_stage_updated() -> void:
|
|
|
|
|
pass
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
func _on_stage_updated() -> void:
|
|
|
|
|
pass
|