Mehrere Anweisungen auswerten

*Dieser Inhalt wurde mit KI (Beta) übersetzt und kann Fehler enthalten. Um diese Seite auf Englisch zu sehen, klicke hier.

If-Anweisungen können mehrere Anforderungen haben, die erfüllt sein müssen, bevor Code ausgeführt wird. Das Schlüsselwort and ermöglicht es Ihnen, Anweisungen zu kombinieren. Der folgende Code prüft zuerst, ob zwei plus zwei gleich sechs ist, und dann, ob vier nicht gleich sechs ist. Wenn beide Anweisungen wahr sind, wird der Code ausgeführt.

-- wird nicht ausgeführt
if 2 + 2 == 6 and 4 ~= 6 then
print("Beide Anweisungen sind wahr")
end
-- wird ausgeführt
if 4 + 2 == 6 and 4 ~= 6 then
print("Beide Anweisungen sind wahr")
end

Erstellen Sie ein Powerup

Powerups sind In-Game-Objekte, die Spielern besondere Fähigkeiten wie Fliegen, Unsichtbarkeit oder Geschwindigkeit verleihen. Dieses Powerup erhöht die Gehgeschwindigkeit des Spielers jedes Mal, wenn das Powerup berührt wird. Das kontinuierliche Anwenden von Boosts kann dazu führen, dass der Spieler viel zu schnell wird, daher wird and verwendet, um die obere Gehgeschwindigkeitsgrenze zu steuern.

Richten Sie das Powerup ein

Verwenden Sie diesen Code mit einem einfachen Teil oder einem Modell, wie einem Kristall, einer Münze oder einer leuchtenden Neonkugel.

  1. Erstellen Sie ein neues Teil mit dem Namen Powerup und fügen Sie ein Skript mit dem Namen WalkSpeedManager ein.

  2. Deklarieren Sie eine Variable mit dem Namen speedBoost und weisen Sie das übergeordnete Objekt des Skripts zu.

    -- Gibt einen temporären Geschwindigkeitsboost, wenn es berührt wird
    local speedBoost = script.Parent
  3. Richten Sie eine Funktion mit dem Namen onTouch ein und verbinden Sie sie mit dem Touched-Ereignis des übergeordneten Objekts. Testen Sie das Spiel und überprüfen Sie Ihre Arbeit.

    local speedBoost = script.Parent
    local function onTouch(otherPart)
    print("Etwas hat speedBoost berührt")
    end
    speedBoost.Touched:Connect(onTouch)
  4. Die WalkSpeed-Eigenschaft befindet sich bei Humanoid-Objekten. Verwenden Sie dasselbe Muster, das beim Erstellen eines Fallen-Teils verwendet wurde, und erstellen Sie eine Bedingung, die nach Humanoid-Objekten sucht.

    Sucht nach Humanoid-Teilen
    local function onTouch(otherPart)
    local character = otherPart.Parent
    local humanoid = character:FindFirstChildWhichIsA("Humanoid")
    if humanoid then
    print("Ein Humanoid wurde gefunden")
    end
    end

Spieler schneller machen

Der Geschwindigkeitsboost lässt Avatare schneller gehen, jedes Mal, wenn der Geschwindigkeitsboost berührt wird. Das wird schnell sehr, sehr schnell. Das Schlüsselwort and stellt sicher, dass die Spieler nicht zu schnell werden, indem der Geschwindigkeitsboost nur aktiviert wird, wenn der Spieler unter einer bestimmten Geschwindigkeit ist.

  1. Wenn ein Humanoid gefunden wird, nehmen Sie den aktuellen WalkSpeed-Wert und addieren Sie 10 dazu. Testen Sie das Spiel, und Ihr Avatar wird jedes Mal schneller, wenn er den Geschwindigkeitsboost berührt.

    Erhöht den aktuellen 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. Verwenden Sie im if-Statement das Schlüsselwort and, um eine zweite Bedingung hinzuzufügen, dass der aktuelle WalkSpeed-Wert weniger als 50 ist. Nach dem Hinzufügen des Boosts wird der schnellste WalkSpeed-Wert 60 sein.

    Überprüft, ob der aktuelle WalkSpeed 50 oder weniger ist
    if humanoid and humanoid.WalkSpeed <= 50 then
    humanoid.WalkSpeed += 10
    end

Feineinstellung des Geschwindigkeitsboosts

OnTouch wird jedes Mal aufgerufen, wenn der Geschwindigkeitsboost berührt wird. Jeder Schritt oder der kleinste Sprung löst das Touched-Ereignis aus und ruft die verbundene Funktion auf. Die Eigenschaft des Teils, CanTouch, kann verhindern, dass das Touched-Ereignis ausgelöst wird. Nutzen Sie CanTouch und schalten Sie den Geschwindigkeitsboost für eine Sekunde aus, jedes Mal, wenn er aktiviert wurde.

  1. Setzen Sie nach dem Anwenden des Boosts die CanTouch-Eigenschaft des Teils auf false. Testen Sie das Spiel und stellen Sie sicher, dass der Boost nur einmal angewendet wird.

    Deaktiviert den Geschwindigkeitsboost
    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. Verwenden Sie task.wait(1), um das Skript für eine Sekunde anzuhalten, und setzen Sie dann CanTouch auf true. Testen Sie das Spiel und stellen Sie sicher, dass der Geschwindigkeitsboost nach einer Sekunde erneut angewendet werden kann.

    Fertiges Skript
    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. Experimentieren Sie mit den Werten im fertigen Skript. WalkSpeed kann bis zu 100 betragen. Der Standard-WalkSpeed-Wert beträgt 16.

Zusammenfassung

Das Schlüsselwort and kann verwendet werden, um mehrere Bedingungen zu verlangen, bevor ein Codeblock ausgeführt wird, wie zum Beispiel, dass ein Wert größer als 0 und kleiner als 100 ist. Oder dass, wenn es einen Humanoid gibt und dessen WalkSpeed kleiner oder gleich 50 ist.

©2026 Roblox Corporation. Roblox, das Roblox-Logo und "Powering Imagination" gehören zu unseren eingetragenen und nicht eingetragenen Markenzeichen in den USA und anderen Ländern.