Parameterübung - Schaltflächen

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

Schaltflächen können von Spielern verwendet werden, um neue Bereiche freizuschalten, Punkte zu vergeben und Schätze zu enthüllen. Immer wenn ein Spieler eine Schaltfläche berührt, sollte es eine Rückmeldung geben, um den Spielern mitzuteilen, dass sie damit interagieren, wie z.B. Farbänderungen oder Geräusche.

In diesem Beispiel wird die Schaltfläche verwendet, um eine Brücke zu aktivieren. Wenn die Schaltfläche gedrückt wurde, wird sie grün und die Spieler können die Brücke benutzen. Wenn der Spieler die Schaltfläche nicht gedrückt hat, wird er durch die Brücke fallen, wenn er versucht, darauf zu gehen.

Eine Brücke erstellen

Beginnen Sie damit, die Brücke einzurichten.

  1. Erstellen Sie einen Bereich in Ihrer Umgebung, in dem die Spieler eine Brücke benötigen.

  2. Erstellen Sie ein Teil für die Brücke und benennen Sie es in Brücke um.

  3. Wählen Sie die Brücke aus, im Eigenschaftenfenster:

    • Ändern Sie Transparenz auf .5. Für Transparenz ist 0 sichtbar, 1 unsichtbar.
    • Aktivieren Sie Ankern.
    • Deaktivieren Sie KannKollidieren.
  4. Wenn Sie das Spiel testen, sollte die Brücke neblig aussehen und die Leute sollten noch nicht darauf gehen können.

Erstellen Sie die Schaltfläche

Jetzt, da die Brücke eingerichtet ist, erstellen Sie die Schaltfläche.

  1. Erstellen Sie ein neues Teil mit dem Namen Schaltfläche.

  2. Ändern Sie die Farbe der Schaltfläche in rot.

  3. Ankern Sie die Schaltfläche.

  4. Bewegen Sie die Schaltfläche so, dass sie leicht schwebt und nichts berührt. Dies stellt sicher, dass das Berührt-Ereignis nicht versehentlich ausgelöst wird.

Machen Sie die Schaltfläche interaktiv

Diesmal verwenden Sie das Class.BasePart.Berührt|Berührt-Ereignis nicht, um eine Falle zu erstellen, sondern um eine Schaltfläche zu erstellen, die die Brücke benutzbar macht. Um die Brücke kollidierbar zu machen, verwenden Sie den Code bridge.CanCollide = true innerhalb einer benutzerdefinierten Funktion, die ausgeführt wird, wenn ein Spieler die Schaltfläche berührt. Sie wissen alles andere, was Sie benötigen, um die folgenden Schritte abzuschließen.

Versuchen Sie, es selbst herauszufinden, bevor Sie sich die Code-Lösung ansehen.

  1. Fügen Sie der Schaltfläche ein neues Skript mit dem Namen AktiviereBrücke hinzu.
  2. Löschen Sie Hallo Welt.
  3. Erstellen Sie Variablen für die Brücke und für die Schaltfläche.
  4. Erstellen Sie eine lokale Funktion, die Folgendes tut, wenn die Schaltfläche berührt wird:
    • Gibt "Schaltfläche berührt" aus.
    • Ändert die Farbe der Schaltfläche von rot auf grün, wenn sie berührt wird.
    • Ändert die Transparenz der Brücke auf 0, um sie sichtbar zu machen.
    • Macht die Brücke benutzbar, indem der Code bridge.CanCollide = true verwendet wird.
  5. Verbinden Sie die Funktion mit dem Berührt-Ereignis der Schaltfläche.
  6. Testen Sie das Skript und stellen Sie sicher, dass die Brücke erscheint, wenn die Schaltfläche berührt wird.

Code-Lösung Unten ist eine mögliche Code-Lösung

-- Fügen Sie dieses Skript in die Schaltfläche ein
-- Ändert die Schaltfläche in grün, wenn etwas die Schaltfläche berührt.
local button = script.Parent
local bridge = workspace.Bridge
local function buttonPressed()
print("Schaltfläche berührt")
button.Color = Color3.fromRGB(0, 170, 0)
bridge.Transparency = 0
bridge.CanCollide = true
end
button.Touched:Connect(buttonPressed)

Beheben Sie Ihre Code-Probleme

Problem: Die Brücke ist bereits solide, wenn das Spiel beginnt. Stellen Sie sicher, dass die Teile verankert sind und nichts berühren. Die Teile könnten etwas berühren, wie Terrain oder ein anderes Teil, und die Funktion buttonPressed() versehentlich auslösen.

Problem: Sie erhalten einen Fehler im Ausgabefenster mit der Meldung: "Brücke ist kein gültiges Mitglied von Workspace" Überprüfen Sie Folgendes:

  • Die Benennung Ihrer Brücke. Die Brücke in Ihrem Skript muss genau so benannt sein wie im Explorer.
  • Dass part.Berührt:Connect(buttonPressed) außerhalb der Funktion buttonPressed() ist.

Optionale Code-Herausforderung

Das Skript in dieser Lektion kann auch verwendet werden, um Türen zu halten, die Spieler von bestimmten Bereichen fernhalten. Üben Sie Ihre Programmierfähigkeiten und tun Sie Folgendes:

  • Erstellen Sie ein Türteil.
  • Erstellen Sie eine Schaltfläche weiter weg von der Tür.
  • Ändern Sie das Skript in dieser Lektion so, dass es die Tür in der Transparenz ändert und der Spieler nicht mit ihr kollidieren kann.

Ihre Version könnte etwa so aussehen:

local button = script.Parent
-- Erinnerung: Ersetzen Sie den Namen des Teils, Tor, durch den in Ihrem Projekt
local gate = workspace.Gate
local function buttonPressed()
print("Schaltfläche berührt")
-- Ändert die Schaltfläche in rot, um dem Spieler Rückmeldung zu geben
button.BrickColor = BrickColor.Red() -- ÄNDERN SIE DAS
-- Macht das Tor unsichtbar
gate.Transparency = 1
-- Macht es so, dass der Spieler durch das Tor gehen kann
gate.CanCollide = false
end
button.Touched:Connect(buttonPressed)
©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.