Verwendung von Parametern und Ereignissen

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

Normalerweise können Funktionen nur die Informationen verwenden, die sie in ihnen kodiert haben. Manchmal jedoch, Sie wissen nicht vorher, was diese Information sein wird, oder Sie möchten in der Lage sein, die gleiche Funktion mit mehreren Stücken ähnlicher Informationen zu wiederverwenden. Zum Beispiel, wenn Sie eine Funktion verwenden möchten, um den Namen der Person anzuzeigen, die einen Obby-Kurs am schnellsten in großen Buchstaben an alle verteilt. Sie werden den Namen des zuk Parameter sind Platzhalter für Informationen, die Sie der Funktion zu einem späteren Zeitpunkt geben möchten. Sie sind wie Fenster, die Sie Pass Informationen an die Funktion übermitteln.

Verwenden Sie Parameter und Ereignisse, um eine Falle aufzustellen

Dieses Skript wird einen Fall erstellen, der die Teile zerstört, die die Teile berühren, einschließlich anderer Teile. Du musst einen Parameter verwenden, um es einzurichten. Sei vorsichtig, den Fall so zu verankern, dass er nicht fällt und Dinge unbeabsichtigt zerstört.

Ein neues Teil erstellen

Ein Teil muss eingerichtet sein, das alles zerstört, was es berührt.

  1. Erstellen Sie ein neues Teil, das nichts berührt. Wenn es etwas berührt, könnte es zu früh abgehen.
  2. In dem Explorer, benennen Sie das Teil:TrapPart.
  3. Verankern das Teil.

Konfigurieren Sie das Skript

Verwenden Sie, was Sie über Variablen und die Erfahrung Hierarchie wissen, um auf den Fall Teil zu beziehen.

  1. Fügen Sie ein neues Skript in den Fang-Teil hinzu. Rennen Sie das Skript TrapScript .

  2. Löschen Sie Hello World und fügen Sie einen beschreibenden Kommentar postenhinzu.

  3. Unter dem Kommentar postenerstellen Sie eine neue Variable, die den übergeordnetes Teilfindet.


    -- Zerstört, was die übergeordnetes Teilberührt
    local trap = script.Parent

Erstellen Sie eine Funktion mit einem Parameter

Die Falle verwendet eine Funktion, um alles zu zerstören, was die Teile berührt. Um zu arbeiten, muss die Funktion wissen, was die Teile berührt hat. Und das bedeutet, dass die Argumente in das () geschrieben sind, das nach dem Namen einer Funktion kommt. Sie sehen aus wie folgt:


local function functionName(parameterName)
end

Die tatsächliche Information, die durch den Parallel器 übertragen wird, wird ein Argument genannt. Sie erstellen eine neue Funktion namens onTouch(), mit einer Funktion namens objectTouched, die die Falle verfolgt und dann den berührenden Teil zerstört.

  1. Erstellen Sie eine lokale Funktion. Es kann einen Namen haben, aber diese Lektion wird onTouch verwenden


    local trap = script.Parent
    local function onTouch()
    end
  2. In dem () , geben Sie einen Namen für den Parameter ein. Diese Lektion wird objectTouched verwenden.


    local trap = script.Parent
    local function onTouch(objectTouched)
    end
  3. Zwischen local function onTouch() und end erstellen Sie eine Druckstatistik. Sie verwenden dies, um zu überprüfen, ob etwas die Teil im nächsten Abschnitt berührt.


    local trap = script.Parent
    local function onTouch(objectTouched)
    print("Something touched the trap")
    end

Verwenden Sie ein Ereignis, um die Funktion aufzurufen

Wir möchten, dass die Funktion läuft, wenn etwas die Teil berührt. Um dies zu tun, verbinden Sie die Funktion mit dem Ereignis Touched. Ereignisse sind Dinge, die in der Erlebnispassieren. Wie ein Spieler ein Teil berührt oder verliert Gesundheit. Wenn eine Funktion mit einem Ereignis verbunden ist, läuft die Funktion, wenn das Ereignis passiert.

Das Ereignis Touched wird ausgelöst, wenn eine Teil eine andere Teil berührt und kann verwendet werden, um Schaltflächen, Fallen und andere Objekte zu erstellen, mit denen Spieler interagieren.

  1. Unter der Funktion end , tippe trap.Touched:Connect(onTouch)


    local trap = script.Parent
    local function onTouch(objectTouched)
    print("Something touched the trap")
    end
    -- Verbinden Sie die Funktion mit dem Ereignis "Berührt"
    trap.Touched:Connect(onTouch)
  2. Klicken Sie auf Test und berühren Sie dann das Teil. Überprüfen Sie Ihre Test-Print-Erklärung: Something touched the trap . Wenn Sie die Zeile im Ausgabe-Fenster nicht sehen können, überprüfen Sie die gefolgte Profile:

    • Stellen Sie sicher, dass die Strings "Something touched the part!" zwischen der lokalen Funktion onTouch() und dem beendenist.
    • Überprüfen Sie, dass Touched mit Großbuchstaben geschrieben ist.
  3. Nun, da die Funktion richtig aufgebaut ist, verwenden Sie sie, um alles zu zerstören, was die Teil berührt. In der Funktion, nach dem String, tippe objectTouched:Destroy() Der fertige Code sollte sein:


    local trap = script.Parent
    local function onTouch(objectTouched)
    print("Something touched the trap")
    -- Zerstöre das berührende Objekt
    objectTouched:Destroy()
    end
    trap.Touched:Connect(onTouch)
  4. Testen Sie erneut und sehen Sie, was passiert, wenn das Teil berührt wird. Ihr Avatar sollte mit verletzten Füßen oder Armen enden. Wenn das Teil den Kopf oder die Nacken des Avatars berührt, könnte es sogar vollständig zerstört werden.

Zusammenfassung

Parameter werden verwendet, um Informationen zu übermitteln, die normalerweise ausser Reichweite wären (wo eine Funktion es nicht sehen kann), in eine Funktion zu übermitteln. Währenddessen sind Ereignisse spezielle Signale, die auf der Erfahrung auftreten, wenn etwas Wichtiges passiert. Andere Objekte haben verschiedene Ereignisse. Funktionen können mit Ereignissen verbunden werden, damit sie jedes Mal