Tödliche Lava

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

In Einführung in das Scripting hast du gelernt, wie man Änderungen in einem Spiel über einen Zeitraum in einer Schleife vornimmt. Was ist, wenn du Änderungen basierend auf dem Verhalten der Benutzer vornehmen möchtest? In diesem Tutorial lernst du, wie man einen tödlichen Lava-Boden erstellt, der Benutzer tötet, wenn sie darauf treten.

Einrichten

Du benötigst einen Platz in deiner Welt, um die tödliche Lava zu platzieren. Wenn du dem Kurs Einführung in das Scripting gefolgt bist, würde der Lava-Boden gut in die Lücke passen, die von den verschwindenden Plattformen abgedeckt wird.

  1. Füge ein Part ein und bewege es an die richtige Stelle in deiner Welt. Nenne es LavaFloor.

  2. Ändere die Größe, sodass es den Boden des umschlossenen Raums abdeckt.

  3. Lass den Boden mehr wie Lava aussehen, indem du die Material-Eigenschaft auf Neon und die Color auf einen Orangeton einstellst.

  4. Füge ein Script in das LavaFloor-Teil ein und benenne es in Kill um.

  5. Entferne den Standardcode und erstelle eine Variable für die Lava.

    local lava = script.Parent

Mit einem Ereignis verbinden

Verwende ein Ereignis, um zu erkennen, wann ein Benutzer die Lava berührt. Jedes Teil hat ein Touched-Ereignis, das ausgelöst wird, wenn etwas es berührt. Du kannst dich mit diesem Ereignis verbinden, um eine Funktion auszuführen, wenn es ausgelöst wird.

  1. Deklariere eine neue Funktion namens kill.

  2. Greife auf das Touched-Ereignis des Lava-Objekts zu, indem du einen Punkt verwendest, genau wie bei einer Eigenschaft: lava.Touched.

  3. Rufe die Connect-Funktion des Touched-Ereignisses auf und übergebe kill() als die Funktion, die aufgerufen werden soll, wenn das Teil berührt wird.

    local lava = script.Parent
    local function kill()
    end
    lava.Touched:Connect(kill)

Jeder Code, den du in der kill-Funktion schreibst, wird jetzt ausgeführt, wann immer etwas die Lava berührt. Beachte, dass ein Doppelpunkt für die Connect-Funktion verwendet wird, nicht ein Punkt - mach dir zu diesem Zeitpunkt keine Sorgen darüber, warum, erinnere dich einfach an den Unterschied.

Das berührende Teil erhalten

Um den Benutzer zu töten, benötigt die Funktion ein Objekt, das mit diesem Benutzer verbunden ist. Das Touched-Ereignis eines Teils kann das "andere Teil" bereitstellen, das es berührt hat - aber nur, wenn du es anforderst, indem du es zu einem Parameter der Funktion machst.

Parameter sind Definitionen dessen, was eine Funktion erwartet, wenn sie aufgerufen wird. Ein Parameter kann in einer Funktion wie jede andere Variable verwendet werden. Du kannst Informationen an einen Parameter übergeben, indem du ihn in die Klammern aufnimmst, wenn eine Funktion aufgerufen wird. Parameter werden in den Klammern in der ersten Zeile einer Funktion definiert. Erstelle einen Parameter namens otherPart für die kill-Funktion.

local lava = script.Parent
local function kill(otherPart)
end
lava.Touched:Connect(kill)

Wenn die kill-Funktion aufgerufen wird, wird der otherPart-Parameter das Teil darstellen, das den Lava-Boden berührt hat, und der Code, den du in der Funktion schreibst, wird in der Lage sein, es zu verwenden.

Charakter und Humanoid

Wenn ein Benutzer die Lava berührt, kann Roblox den spezifischen Körperteil des Benutzers erkennen, das es berührt hat, wie das linke Bein oder den rechten Fuß. Dieses Teil befindet sich im Character-Modell des Benutzers, das alle Objekte enthält, die den Avatar des Benutzers im Spiel ausmachen, einschließlich:

  • Der einzelnen Körperteile des Benutzers wie Kopf, Gliedmaßen und Torso.
  • Jeglicher Kleidung und Accessoires, die der Benutzer trägt.
  • Der Humanoid, ein spezielles Objekt, das viele Eigenschaften in Bezug auf den Benutzer enthält, einschließlich der Gesundheit des Benutzers.
  • Der HumanoidRootPart, der die Bewegung des Benutzers steuert.

Wie bereits erwähnt, ist jedes Körperteil, das die Lava berührt, Teil des Character-Modells, sodass du eine Referenz zu diesem Charakter mit otherPart.Parent erhalten kannst. Erstelle eine Variable, um den Elternteil des Teils zu speichern, das den Lava-Boden berührt hat.

local lava = script.Parent
local function kill(otherPart)
local partParent = otherPart.Parent
end
lava.Touched:Connect(kill)

Aus dem Charaktermodell musst du das Humanoid-Objekt abrufen, um den Benutzer zu töten. Du kannst dies mit der Funktion FindFirstChild() tun - übergebe einfach den Namen des Objekts, nach dem du suchst, und es liefert das erste übereinstimmende Kind, das es in diesem Objekt findet. Rufe FindFirstChild() auf der partParent-Variablen mit "Humanoid" als Kind, das gefunden werden soll, auf und speichere das Ergebnis in einer neuen Variablen namens humanoid.

local lava = script.Parent
local function kill(otherPart)
local partParent = otherPart.Parent
local humanoid = partParent:FindFirstChild("Humanoid")
end
lava.Touched:Connect(kill)

Überprüfe den Humanoid

Du kannst leicht überprüfen, ob der Humanoid gefunden wurde, indem du eine if-Anweisung verwendest. Der Code in einer if-Anweisung wird nur ausgeführt, wenn die Bedingung, die in der ersten Zeile definiert ist, wahr ist.

Es gibt eine Vielzahl von Operatoren, die verwendet werden können, um komplexere Bedingungen zu erstellen, die du in zukünftigen Kursen kennenlernen wirst - für jetzt setze einfach die humanoid-Variable dort ein. Erstelle eine if-Anweisung mit humanoid als Bedingung.

local lava = script.Parent
local function kill(otherPart)
local partParent = otherPart.Parent
local humanoid = partParent:FindFirstChild("Humanoid")
if humanoid then
end
end
lava.Touched:Connect(kill)

Setze die Gesundheit des Charakters

Jetzt, da der Humanoid überprüft wurde, können seine Eigenschaften geändert werden. Wenn du seine Health-Eigenschaft auf 0 setzt, stirbt der zugehörige Charakter. Setze im Körper der if-Anweisung die Health-Eigenschaft des Humanoids auf 0.

local function kill(otherPart)
local partParent = otherPart.Parent
local humanoid = partParent:FindFirstChild("Humanoid")
if humanoid then
humanoid.Health = 0
end
end
lava.Touched:Connect(kill)

Damit ist dein Lava-Boden fertig! Teste dein Spiel und du solltest feststellen, dass deine tödliche Lava Benutzer beim Kontakt erfolgreich tötet. Versuche, deine Lava als zusätzliche Herausforderung in einem Obby zu verwenden oder als Grenze für eine Welt.

Endgültiger Code

local lava = script.Parent
local function kill(otherPart)
local partParent = otherPart.Parent
local humanoid = partParent:FindFirstChild("Humanoid")
if humanoid then
humanoid.Health = 0
end
end
lava.Touched:Connect(kill)
©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.