在 Godot 4 中,信号(Signal) 是节点之间通信的核心机制,它基于观察者模式。简单来说,信号允许一个节点在特定事件发生时“广播”消息,而其他节点可以“监听”并做出反应,而无需知道发送者的具体细节。
这种机制实现了低耦合,是 Godot 开发中最常用的功能之一。
以下是 Godot 4 信号的完整使用指南:
1. 信号的两种类型
- 内置信号:Godot 节点自带的信号。
- 例如:
Button的pressed(点击)、Timer的timeout(计时结束)、Area2D的body_entered(物体进入区域)。
- 例如:
- 自定义信号:你在脚本中自己定义的信号,用于通知自定义逻辑。
- 例如:
player_died(玩家死亡)、level_complete(关卡完成)。
- 例如:
2. 使用自定义信号的 3 个步骤
如果你需要自己定义一个信号(例如:玩家血量变化通知 UI),通常遵循以下流程:
第一步:声明信号
在脚本顶部(extends 下方)使用 signal 关键字声明。你可以定义参数来传递数据。
# Player.gd
extends CharacterBody2D
# 1. 声明信号(可以带参数)
signal health

&spm=1001.2101.3001.5002&articleId=160816160&d=1&t=3&u=3da7e91c51634bba939c8c8ef8474f35)
2875

被折叠的 条评论
为什么被折叠?



