评论多个声明

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

如果声明可以有多个需要在运行验证码前真实的要求。 关键字 and 允许您组合声明。 以下代码评估先 if two plus two equals six 然后 if 不是六。 如果两个声明都是真实的,代码将奔跑。


-- 不会运奔跑
if 2 + 2 == 6 and 4 ~= 6 then
print("Both statements are true")
end
-- 会运奔跑
if 4 + 2 == 6 and 4 ~= 6 then
print("Both statements are true")
end

创建一个强化道具

强化道具是体验物品,可以让玩家拥有特殊能力,例如飞行、隐身或速度。 此强化道具会每次触摸强化道具时增加玩家的步行速度。 不间断地应用强化道具可以让玩家走得太快,因此 and 将用于控制上限。

设置增强道具

使用此代码与一个简单的零件或模型,例如水晶、硬币或发光的霓虹球。

  1. 创建一个名为 Powerup 的新部分,并插入名为 WalkSpeedManager 的脚本。

  2. 声明一个名为 speedBoost 的变量,并且为脚本的父对象分配。


    -- 触摸时给予暂时速度提升
    local speedBoost = script.Parent
  3. 设置一个名为 onTouch 的函数,并将其连接到父对象的 Touched 事件。然后测试并检查您的工作。


    local speedBoost = script.Parent
    local function onTouch(otherPart)
    print("Something touched speedBoost")
    end
    speedBoost.Touched:Connect(onTouch)
  4. WalkSpeed 属性在人形物体上找到。使用创建陷阱部分时使用的模式,以及检查人形物体的条件。

    寻找人形部件

    local function onTouch(otherPart)
    local character = otherPart.Parent
    local humanoid = character:FindFirstChildWhichIsA("Humanoid")
    if humanoid then
    print("A Humanoid was found")
    end
    end

加速玩家

速度提升会让虚拟形象每次触发速度提升时更快地走路。 那将很快变得非常, 非常快。 关键字 and 将确保玩家只能通过启用速度提升来启用速度提升,如果玩家处于特定速度下。

  1. 如果找到一个人形,请取得当前的WalkSpeed值,并将其加上10。进行游戏测试,并且你的虚拟形象每次触摸速度提升时会获得更快。

    增加当前 WalkSpeed

    local function onTouch(otherPart)
    local character = otherPart.Parent
    local humanoid = character:FindFirstChildWhichIsA("Humanoid")
    if humanoid then
    humanoid.WalkSpeed += 10
    end
    end
    speedBoost.Touched:Connect(onTouch)
  2. 在 if 声明中,使用关键字 and 来添加第二个条件,当前的 WalkSpeed 值小于 50 时。 添加加成后,最快的 WalkSpeed 值将为 60。

    检查当前 WalkSpeed 是否为 50 或更小

    if humanoid and humanoid.WalkSpeed <= 50 then
    humanoid.WalkSpeed += 10
    end

精确调整速度提升

触摸每次速度提升触发时都会调用 OnTouch 。 每个步骤或最轻微的弹出都会触发 Touched 事件,并调用连接的函数。 零件的属性, CanTouch 可以让触摸事件从发射。 利用 CanTouch 并关闭速度提升每次激活后的速度。

  1. 在应用加成后,将零件的 CanTouch 属性设置为 false。 进行游戏测试并确保加成只适用于一次。

    禁用速度提升

    local speedBoost = script.Parent
    local function onTouch(otherPart)
    local character = otherPart.Parent
    local humanoid = character:FindFirstChildWhichIsA("Humanoid")
    if humanoid and humanoid.WalkSpeed <= 50 then
    humanoid.WalkSpeed += 10
    speedBoost.CanTouch = false
    end
    end
    speedBoost.Touched:Connect(onTouch)
  2. 使用 task.wait(1) 暂停脚本,然后将 CanTouch 设置为 true。 测试并确保速度提升可以在一秒后重新应用。

    已完成脚本

    local speedBoost = script.Parent
    local function onTouch(otherPart)
    local character = otherPart.Parent
    local humanoid = character:FindFirstChildWhichIsA("Humanoid")
    if humanoid and humanoid.WalkSpeed <= 50 then
    humanoid.WalkSpeed += 10
    speedBoost.CanTouch = false
    task.wait(1)
    speedBoost.CanTouch = true
    end
    end
    speedBoost.Touched:Connect(onTouch)
  3. 使用已完成的脚本中的值来玩。WalkSpeed 可以达到 100 。默认值为 16。

概要

关键字 and 可以用来在运行代码块前需要多个条件,例如一个值超过 0 和少于 100。或者它是否存在一个人形和其走路速度小于 50。