Menu
CoddyTech

加入一个组

本课属于 Coddy Godot 学习旅程的“信号与碰撞”单元。第 11 课,共 27 课。

游戏中通常会有很多金币或很多敌人。组是一个标签,你可以添加到节点上,这样就能把它们当作一个集合来处理。

节点通常会在 _ready() 中使用 add_to_group() 加入一个组:

func _ready():
	add_to_group("coins")

组名是引号中的文本。第一个加入的节点会创建这个组。

这 4 枚金币都运行 coin.gd,所以这一行代码会把它们全部加入这个组。Main 上的脚本会旋转 coins 中的每个节点:

extends Node2D

# Main 会让 coins 组中的每个节点旋转。
func _process(delta):
	for coin in get_tree().get_nodes_in_group("coins"):
		coin.rotation += 3 * delta

for 循环会在之后的两节课中讲解。目前这个组还是空的,所以没有任何东西会旋转。

challenge icon

挑战

简单

让每枚硬币都加入一个组。

  1. 在 coin.gd 中,将 _ready() 里的 pass 替换为一行代码,把硬币添加到名为 "coins" 的组中。
  2. 组名中的字母 c 要小写。

按“运行”:四枚硬币都会旋转。然后按“检查”。

亲手试试

extends Area2D

func _ready():
	pass

信号与碰撞中的所有课

自己练习: Godot 在线编辑器