使用 While 循环重复代码

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

许多计算机科学或游戏开发中的事件经常重复。例实例,应用程序每几秒钟可能更新内容,或游戏每天都会奖励玩家一次奖励。为此,许多开发人员常常使用 循环)

在计算机科学中, 循环 是一个编码模式,它重复一组指令,通常直到满足特定条件。为了实现这一点,您将代码更改颜色的零件。稍后的课程将显示如何停止循环。

设置零件和脚本

使用任何 Roblox 项目为此练习。完成后,这部分可以作为装饰环境的方式使用。

  1. 创建一个名称描述的新部分。此课程使用 循环部分

  2. ServerScriptService 中,添加一个名为 LoopingScript 的新脚本。

  3. 在脚本中,删除 Hello World ,并写一个 评论 ,声明此脚本的目的。


    -- Changes the color of LoopingPart every few seconds

使用变量存储零件

变量还可以包含对象之外的参考。例如,当脚本知道参考部分时,脚本可以更改它。

相反,在线上输入 workspace.NameOfYourPart 可以将整个线路存储在本地变量中。本地变量通过输入 local 和变量名称创建。

例如: local nameOfVariable

  1. 在评论下,创建一个本地变量,通过输入 local loopingPart


    -- 每隔几秒钟更改 LoopingPart 的颜色
    local loopingPart
  2. 将变量设置为循环部分,例如在同一行上输入 = workspace.LoopingPart 来设置变量的值。请记住, = 操作器将变量的值设置为右侧的任何内容。


    -- 每隔几秒钟更改 LoopingPart 的颜色
    local loopingPart = workspace.LoopingPart

而且循环

在创建颜色变更部分的时间循环之前,就值得解释其语法。时间循环有三个组成部分:

  • 而 关键字。
  • 一个条件,总是在关键字后面。
  • doend 关键字之间的说明。

在循环中,条件可以是各种各样的逻辑声明。有些例子可能是两个数字相同。如果条件是真的,循环将会运行。

在下面的示例中注意,条件是真的,意味着这个循环永远运行。在后续的课程中,你将代码具体的条件,停止。


while true do
print("This loop is running")
end

编写一个 While 循环

接下来,您将为更改颜色的零件设置 while 循环。

  1. 在下一行中,输入 while true do 。然后,按 输入 自动完成并添加单词 end


    -- 每几秒钟更改循环部件的颜色
    local loopingPart = workspace.LoopingPart
    -- 循环代码
    while true do
    end

在循环中添加代码

随着时间的推移,指示可以添加到更改零件颜色的时间。 在循环中,添加一行代码为每个颜色。 每个颜色将使用 RGB 值,一种存储颜色为数量的方法。

  1. while true doend 之间,将零件的颜色设置为 Color3.fromRGB()


    local loopingPart = workspace.LoopingPart
    while true do
    loopingPart.Color = Color3.fromRGB()
    end
  2. 设置颜色可以使用 Studio 中的颜色选择器来执行。 要执行此操作,请单击 Studio 中的 () 旁边的 fromRGB 。然后,单击颜色轮钮标志。一旦你有所需的颜色,请按“好的”添加颜色值。


    local loopingPart = workspace.LoopingPart
    while true do
    loopingPart.Color = Color3.fromRGB(82, 227, 255)
    end

让脚本等待

如果您现在添加第二行变色代码,它将使砖块的颜色更快,您可能甚至不会看到第一个颜色。要使脚本在运行下一个行代验证码之前等待,请使用 task.wait() 函数。

  1. 在更改砖块颜色后,请输入 task.wait(3) 。 在 () 内的任何数字都是脚本将在的时间。


    local loopingPart = workspace.LoopingPart
    while true do
    loopingPart.Color = Color3.fromRGB(82, 227, 255)
    task.wait(3)
    end
  2. 在等待函数中,重复添加新颜色的过程。使用额外的等待函数来完成它。


    while true do
    loopingPart.Color = Color3.fromRGB(82, 227, 255)
    task.wait(3)
    loopingPart.Color = Color3.fromRGB(177, 52, 255)
    task.wait(3)
    end
  3. 测试代码,看看颜色是否改变。

调试注释 在此时,如果更改颜色的部分不如预期地工作,请尝试以下列中的一个。 问题 : 颜色已跳过

  • 请确保您在每次颜色变更之间都有一个等待函数,尤其是在最后一行。

  • 检查所有颜色变更和等待代码在 while true doend 部分之间。 问题 : 零件仍然是灰色或不如预期的颜色

  • 确保所有 RGB 值都有从 0 到 255 之间的数字,它们是整数或小数,并且用逃号分开。

  • () 的等待函数内的数量应大于 1 。如果等待过短,您可能无法看到那个颜色。

完成颜色循环部分脚本


-- 创建变量来存储零件
local loopingPart = workspace.LoopingPart
-- 循环代码
while true do
-- 更改循环部件的颜色
loopingPart.Color = Color3.fromRGB(82, 227, 255)
-- 等待 3 秒后的下一步指示
task.wait(3)
loopingPart.Color = Color3.fromRGB(177, 52, 255)
task.wait(3)
end

概要

循环是大多数电脑语言的常见元素。它们用于重复指令,有时直到特定条件满足。在此文章中, while 循环用于重复指令。 要创建一个永远重复的 while 循环,请使用以下语法,确保在 doend 键之间包含指令。


while true do
-- 说明
end