脚本介绍

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

Roblox Studio 介绍 中,您学习了如何在 Roblox Studio 中创建和操作部件。在本教程中,您将学习如何将 脚本 应用到部件上,使平台出现和消失。您可以在平台游戏中使用此功能来跨越间隙,挑战用户仔细把握跳跃时机以到达另一侧。

设置场景

首先,您需要一个 部件 来充当平台。从 Roblox Studio 介绍 中,您应该对创建和移动部件感到熟悉。您不需要一个复杂的世界,只需一个用户无法轻易跳过的间隙即可。

  1. 插入一个 部件 并将其重命名为 DisappearingPlatform

  2. 调整其大小,使其足够大以供用户跳跃。

  3. 将其移动到合适的位置,以便在测试游戏时可以到达并跳上去。

    alt

  4. 属性 窗口中将 Anchored 属性设置为 true

插入脚本

Roblox 中的代码是用一种叫做 Luau 的语言编写的,您可以将其放入 资源管理器 中的各种容器中的脚本中。如果您将脚本放在 部件 下,Roblox 会在部件加载到游戏中时运行脚本的代码。

  1. 资源管理器 窗口中,将鼠标悬停在 DisappearingPlatform 部件上,点击 + 按钮以在平台中插入新脚本。将新脚本重命名为 Disappear

  2. 删除默认代码。

第一个变量

在脚本开始时创建一个 变量 来表示平台是个好主意。变量是与 相关联的 名称。一旦创建了变量,就可以反复使用。您可以根据需要更改值。

在 Luau 中,变量的创建方式如下:local variableName = variableValue

local 这个术语意味着变量只会在声明它的脚本块中使用。= 符号用于设置变量的值。变量的名称通常采用 驼峰命名法。这意味着第一个单词小写,后面的每个单词首字母大写,例如 justLikeThis

复制以下代码以创建一个名为 platform变量,其值为 script.Parent

local platform = script.Parent

消失函数

是时候让平台消失了。将实现特定操作的代码分组到一个 函数 中总是最好的。函数是一个命名的代码块,帮助您组织代码并在多个地方使用,而无需重复编写。创建一个名为 disappear函数

local platform = script.Parent
local function disappear()
end

第一行新代码 声明 了函数——它指示函数的开始并将其命名为 disappear。函数的代码位于第一行和 end 之间。

括号用于根据需要包含额外信息。您将在后面的课程中学习更多关于向函数传递信息的内容。

部件属性

当平台消失时,它需要不可见,用户需要能够穿过它——但您不能简单地销毁平台,因为它需要在稍后重新出现。

部件有各种 属性 可以在这里使用。请记住,如果您选择一个部件并查看 属性 窗口,您可以看到该部件的属性。

通过更改 Transparency 属性,可以使部件变得不可见。透明度的值可以在 0 和 1 之间,其中 1 是完全透明,因此不可见。

更改立方体的透明度属性

CanCollide 属性决定其他部件(和用户)是否可以穿过该部件。如果将其设置为 false,用户将会穿过平台。

更改立方体的 CanCollide 属性

就像 script.Parent 一样,属性是通过 访问的。使用等号分配值。

  1. disappear 函数中,将平台的 CanCollide 属性设置为 false

  2. 在下一行,将 Transparency 属性设置为 1

    local platform = script.Parent
    local function disappear()
    platform.CanCollide = false
    platform.Transparency = 1
    end

调用函数

一旦您声明了一个函数,就可以通过在其名称旁边写上括号来运行它。例如,disappear() 将运行 disappear 函数。这被称为 调用 函数。

  1. 在脚本的末尾 调用 disappear 函数。

    local platform = script.Parent
    local function disappear()
    platform.CanCollide = false
    platform.Transparency = 1
    end
    disappear()
  2. 启动游戏测试。如果您的代码正常工作,用户生成时平台应该已经消失。

出现函数

您可以通过编写一个与 disappear 函数完全相反的函数来轻松使平台重新出现。

  1. 从脚本中删除 disappear() 行。

  2. 声明一个名为 appear 的新函数。

  3. 在函数体内,将 CanCollide 属性设置为 true,将 Transparency 属性设置为 0

    local platform = script.Parent
    local function disappear()
    platform.CanCollide = false
    platform.Transparency = 1
    end
    local function appear()
    platform.CanCollide = true
    platform.Transparency = 0
    end

循环代码

平台应该不断地消失和重新出现,每次变化之间间隔几秒。编写无限数量的函数调用是不可能的——幸运的是,使用 while 循环,您不必这样做。

while 循环在 while 后的 语句 为真时运行其中的代码。这个特定的循环需要永远运行,因此语句应该只是 true。在脚本的末尾创建一个 while true 循环。

local platform = script.Parent
local function disappear()
platform.CanCollide = false
platform.Transparency = 1
end
local function appear()
platform.CanCollide = true
platform.Transparency = 0
end
while true do
end

切换平台

在 while 循环中,您需要编写代码以在平台消失和重新出现之间等待几秒钟。

可以使用内置函数 task.wait() 来实现这一点。在括号中需要等待的秒数:例如 task.wait(3)

三秒是每个平台状态之间的合理起始时间。

  1. 在 while 循环中,调用 task.wait() 函数,括号中传入 3
  2. 调用 disappear 函数。
  3. 再次调用 task.wait() 函数,括号中传入 3
  4. 调用 appear 函数。
while true do
task.wait(3)
disappear()
task.wait(3)
appear()
end

平台的代码现在完成了!现在测试您的代码,您应该发现平台在三秒后消失,三秒后重新出现,并循环进行。

您可以复制此平台以覆盖更大的间隙,但您需要更改每个脚本中的等待时间。否则,所有平台将同时消失,用户将无法通过。

最终代码

local platform = script.Parent
local function disappear()
platform.CanCollide = false
platform.Transparency = 1
end
local function appear()
platform.CanCollide = true
platform.Transparency = 0
end
while true do
task.wait(3)
disappear()
task.wait(3)
appear()
end
©2026 Roblox Corporation、Roblox、Roblox 标志及 Powering Imagination 是我们在美国及其他国家或地区的注册与未注册商标。