父母和孩子

*此内容使用人工智能(Beta)翻译,可能包含错误。若要查看英文页面,请点按 此处

与其从 ServerScriptService 运行脚本,不如将脚本附加到部件上。例如,使用脚本将部件变成陷阱,或使部件在玩家触碰时给予积分。通过理解脚本和部件在层次结构中的关系,您可以创建一个自动工作的脚本,而无需指定使用哪个部件。

要做到这一点,您必须理解 父子关系

父母和孩子是描述不同对象之间层次结构的方式。每当您向 Workspace 添加新部件时,Workspace 就是父对象,而该部件成为子对象。当您将脚本添加到 ServerScriptService 时,ServerScriptService 是父对象,而脚本是新的子对象。

设置项目和脚本

为了演示父子关系,您将从一个改变颜色的单一部件开始,然后将脚本复制到多个部件上。

  1. 创建一个新部件并重命名。此课程将使用 ColorPart。

  2. 右键单击 部件,选择 插入对象新脚本。将脚本重命名为 ColorChanger

  3. 将下面的代码复制并粘贴到 ColorChanger 中。此版本的代码与您之前使用的相同。它将特定部件分配给一个变量。

    更改 ColorPart 的颜色
    local Workspace = game:GetService("Workspace")
    local colorPart = Workspace.ColorPart
    colorPart.Color = Color3.fromRGB(50, 240, 255)
  4. 测试并检查部件是否按预期更改颜色。

父子关系

父对象是任何附加在其下方的对象,如脚本或部件。任何在父对象下的对象都是其 子对象。在下面的示例中,ColorPart 是父对象,而 ColorChanger 是子对象。

使用当前脚本,您只能更改名为 ColorPart 的 单个部件 的颜色。要更改任何部件的颜色,您可以设计代码以在脚本的父对象上工作,无论它的名称是什么。代码 script.Parent 将向上查找层次结构并找到脚本附加的对象。

使用 script.Parent

script.Parent 可以像其他值一样使用 = 符号分配给一个变量。

  1. 在脚本中,将命名的部件替换为 script.Parent。检查您的代码如下。

    更改父对象的颜色
    local colorPart = script.Parent
    colorPart.Color = Color3.fromRGB(50, 240, 255)

测试可重用部件

现在变量将引用脚本附加到的任何部件,您可以根据需要制作任意数量的副本。

  1. 右键单击颜色部件并选择复制,或使用快捷键 CtrlD (D)。总共创建至少三个部件。

  2. 运行游戏以检查所有部件是否更改颜色。

总结

与其总是通过名称和位置直接引用部件,不如使用 script.Parent 作为替代。该代码将获取脚本附加的父对象,从而让脚本对其进行修改。使用 script.Parent 这样的代码将对使您的代码可重用非常有帮助。需要记住的一个缺点是,如果您想更改代码,现在有多个脚本需要更新。

©2026 Roblox Corporation、Roblox、Roblox 标志及 Powering Imagination 是我们在美国及其他国家或地区的注册与未注册商标。