Tool

Veraltete anzeigen

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

Tools sind Objekte, die ein Humanoid Objekt ausrüsten kann.Für Spieler werden sie in einem Backpack Objekt gespeichert, das einem Player Objekt zugewiesen ist.Im Spiel können Spieler mehrere Werkzeuge haben, die als Ikonen am unteren Rand des Bildschirms erscheinen.Das Ausrüsten eines Werkzeugs bewegt es vom Rucksack in ein Player.Character -Modell im Workspace .Standardmäßig werden Werkzeuge in der rechten Hand gehalten und haben einen Griff, der im Inneren "Griff" genannt wird, der Part heißt (obwohl kein Griff erforderlich ist, wenn Tool.RequiresHandle ausgeschaltet ist).Werkzeuge, die den Spielern zur Verfügung gestellt werden sollen, sollten im StarterPack gespeichert werden.

Auf dem Desktop wird das Drücken einer Zahlentaste (1, 2, 3...) ein Werkzeug ausrüsten.Ausgerüstete Tools können in den Arbeitsbereich durch Drücken von Backspace fallen gelassen werden.Es wird empfohlen, Tool.CanBeDropped auszuschalten, damit es nicht möglich ist, ein Werkzeug abzuwurfen, zu sterben, wiederzuspawnen und wieder abzustürzen, um Werkzeuge zu duplizieren.Auf Gamepads werden die Tasten LB und RB Werkzeuge ausrüsten.Du kannst die Aktivierung durch einen linken Klick (oder rechten Trigger auf dem Gamepad) deaktivieren, indem du Tool.ManualActivationOnly einstellst.Dazu müssen Sie sich selbst durch eine Art anderer Benutzeingabe aktivieren.

Tools sind nicht die einzige Möglichkeit, die Eingabe eines Benutzers zu erfassen.Du kannst auch ContextActionService , UserInputService oder Player:GetMouse() verwenden.Wenn Sie ein Werkzeug benötigen, das mehrere Aktionen hat, wie z. B. das Drücken einer Taste, während das Werkzeug ausgerüstet ist, sollten Sie den BindAction und UnbindAction des ContextActionService in den Equipped und Unequipped Ereignissen verwenden, jeweils entsprechend.Verwende ein LocalScript sende diese Aktionen an den Server über einen RemoteFunction innerhalb des Werkzeugs.

Code-Beispiele

This code is meant to be placed in a Script within a Tool. It allows a player to spawn explosions by equipping the tool and clicking on the ground. It does so by defining a function, explode, which creates a non-deadly explosion at a given point. Then, it defines a function, onActivated, that runs when the tool is activated. Finally, it connects the Activated event of the tool to the onActivated function.

To test this code out, try creating a Tool and put a Part inside it. Name the Part "Handle". Put a Script inside the Tool next, and paste the code into it. Finally, put the Tool in the StarterPack.

Explode Tool Example

local tool = script.Parent
local function explode(point)
local e = Instance.new("Explosion")
e.DestroyJointRadiusPercent = 0 -- Make the explosion non-deadly
e.Position = point
e.Parent = workspace
end
local function onActivated()
-- Get the Humanoid that Activated the tool
local human = tool.Parent.Humanoid
-- Call explode with the current point the Humanoid is targetting
explode(human.TargetPoint)
end
tool.Activated:Connect(onActivated)

This code sample is for a Tool object with a Part named Handle. It detects when Humanoids other than the current holder hit the handle, and deals some damage to them. In addition, when the Tool is activated, it triggers a slash animation in the default character animation scripts. Try out this script by creating a Tool object in the StarterPack. Put a Part inside it, and name it Handle. Paste this code into a Script inside the Tool, then try slashing at another Humanoid!

Sword Tool Example

local tool = script.Parent
local function onTouch(partOther)
-- First, try to see if the part we touched was part of a Humanoid
local humanOther = partOther.Parent:FindFirstChild("Humanoid")
-- Ignore touches by non-humanoids
if not humanOther then
return
end
-- Ignore touches by the Humanoid carrying the sword
if humanOther.Parent == tool.Parent then
return
end
humanOther:TakeDamage(5)
end
-- Trigger a slash animation
local function slash()
-- Default character scripts will listen for a "toolanim" StringValue
local value = Instance.new("StringValue")
value.Name = "toolanim"
value.Value = "Slash" -- try also: Lunge
value.Parent = tool
end
tool.Activated:Connect(slash)
tool.Handle.Touched:Connect(onTouch)

Zusammenfassung

Eigenschaften

  • Parallel lesen

    Steuert, ob der Spieler das Toolfallen lassen kann.

  • Parallel lesen

    Bezieht sich darauf, ob das Werkzeug verwendet werden kann oder nicht.

  • Parallel lesen

    Lagert die "Griff"-Eigenschaften des Toolals eine CFrame .

  • Verborgen
    Nicht repliziert
    Parallel lesen

    Repräsentiert die , und Werte der Greifrotationsmatrix.

  • Verborgen
    Nicht repliziert
    Parallel lesen

    Der positoriale Versatz der Schweißmatrix des Tool.

  • Verborgen
    Nicht repliziert
    Parallel lesen

    Repräsentiert die , und Werte der Greifrotationsmatrix.

  • Verborgen
    Nicht repliziert
    Parallel lesen

    Repräsentiert die , und Werte der Greifrotationsmatrix.

  • Die Eigenschaft ManualActivationOnly prüft, ob die Tool ohne die Ausführung von Tool:Activate() aktiviert werden kann.

  • Parallel lesen

    Bestimmt, ob eine Tool-Funktion ohne Ziehpunktfunktioniert.

  • Parallel lesen

    Steuert die angezeigte Nachricht, wenn die Maus des Spieler:inüber das Werkzeug in deren Rucksack schwebt.

Eigenschaften von BackpackItem übernommen
  • TextureId:ContentId
    Parallel lesen

    Das Textur-Symbol, das für ein Werkzeug im Rucksack des Spieler:inangezeigt wird.

Eigenschaften von Model übernommen
  • Plugin-Sicherheit
    Parallel lesen

    Legt das Detaillevel auf dem Modell für Erlebnisse mit aktiviertem Instanzstreaming fest.

  • Steuert das Modellstreamingverhalten auf Models, wenn Instanzstreaming aktiviert ist.

  • Parallel lesen

    Der primäre Teil des Model , oder nil wenn nicht explizit festgelegt.

  • Nicht repliziert
    Nicht skriptfähig
    Parallel lesen

    Eigenschaft nur für den Editor, mit der das Modell um seinen Pivot herum skaliert wird. Das Festlegen dieser Eigenschaft bewegt die Skalierung, als ob Model/ScaleTo aufgerufen wurde.

  • Nicht repliziert
    Parallel lesen

    Bestimmt, wo sich der Pivot eines , der keine festgelegte hat, befindet.

Eigenschaften von PVInstance übernommen

Methoden

Methoden von Model übernommen
  • AddPersistentPlayer(playerInstance : Player):()

    Setzt dieses Modell für den angegebenen Spieler dauerhaft. ModelStreamingMode muss auf PersistentPerPlayer gesetzt werden, damit sich das Verhalten ändert, als Ergebnis der Ergänzung.

  • Gibt eine Beschreibung eines Volumens zurück, das alle Teile eines Modells enthält.

  • Gibt die Größe der kleinsten Bindungsbox zurück, die alle BaseParts in der Model enthält, ausgerichtet auf die Model.PrimaryPart, wenn sie festgelegt ist.

  • Gibt alle Player Objekte zurück, für die dieses Modellobjekt persistent ist.Das Verhalten unterscheidet sich je nachdem, ob diese Methode von einem Script oder einem LocalScript aufgerufen wird.

  • Gibt die kanonische Skala des Modells zurück, die standardmäßig auf 1 für neu erstellte Modelle gesetzt wird und sich ändern wird, wenn sie über Model/ScaleTo skaliert wird.

  • MoveTo(position : Vector3):()

    Bewegt den PrimaryPart an die angegebene Position. Wenn kein primärer Teil angegeben wurde, wird der Wurzelteil des Modells verwendet.

  • RemovePersistentPlayer(playerInstance : Player):()

    Macht dieses Modell für den angegebenen Spieler nicht mehr persistent.ModelStreamingMode muss auf PersistentPerPlayer gesetzt werden, damit sich das Verhalten ändert, als Ergebnis der Entfernung.

  • ScaleTo(newScaleFactor : number):()

    Legt den Skalierungsfaktor des Modells fest, passt die Größe und den Standort aller Nachkommen-Instanzen an, sodass sie diesen Skalierungsfaktor im Verhältnis zu ihrer ursprünglichen Größe und ihrem Standort haben, als der Skalierungsfaktor 1 war.

  • TranslateBy(delta : Vector3):()

    Verschiebt eine Model durch den angegebenen Vector3 Offset, wobei die Orientierung des Modells beibehalten wird.Wenn ein anderes BasePart oder Terrain bereits an der neuen Position existiert, wird der Model das zugeordnete Objekt überschreiben.

Methoden von PVInstance übernommen

Ereignisse

Eigenschaften

CanBeDropped

Parallel lesen

Die Eigenschaft CanBeDropped prüft, ob der Spieler die Tool fallen lassen kann.

Wenn true, wird der Rücktaste-Button gedrückt, wird das Werkzeug zu Workspace und vom Spieler:inentfernt Backpack .Wenn falsch, passiert nichts, wenn die Rücktaste gedrückt wird, und das Werkzeug bleibt ausgerüstet.

Enabled

Parallel lesen

Die Aktivierte Eigenschaft bezieht sich darauf, ob oder nicht der Tool verwendet werden kann.Dies ist nützlich, wenn du verhindern möchtest, dass ein Spieler ein Toolverwendet, aber es nicht von seiner Backpack entfernen möchtest.

Wenn es auf true gesetzt ist, kann der Spieler das Werkzeug verwenden.Wenn es auf false eingestellt ist, ist das Tool deaktiviert und der Spieler kann es nicht verwenden; dies verhindert, dass das Tool durch die Methoden Tool:Activate() und Tool:Deactivate() aktiviert oder deaktiviert wird, und verhindert, dass die Ereignisse Tool.Activated und Tool.Deactivated abgefeuert werden.

Code-Beispiele

The code sample below creates Tool in the local player's Backpack that increases their JumpPower from 50 to 150 for 5 seconds.

This example uses the tool's Tool.Enabled property as a debounce by setting the property to true when the player jumps and back to false after the 5 second duration.

Unequipping the tool also stops the player from super jumping by changing the JumpPower back to 50.

Superjump Tool

local Players = game:GetService("Players")
local player = Players.LocalPlayer
local character = player.Character or player.CharacterAdded:Wait()
local humanoid = character:WaitForChild("Humanoid")
local tool = Instance.new("Tool")
tool.Name = "SuperJump"
tool.RequiresHandle = false
tool.Parent = player.Backpack
function toolActivated()
humanoid.JumpPower = 150
tool.Enabled = false
task.wait(5)
tool.Enabled = true
humanoid.JumpPower = 50
end
tool.Activated:Connect(toolActivated)
tool.Unequipped:Connect(function()
humanoid.JumpPower = 50
end)

Grip

Parallel lesen

Die Grip Eigenschaft speichert die "Griff"-Eigenschaften des Toolals einzelne CFrame .Diese Eigenschaften legen fest, wie der Spieler das Werkzeug hält und enthalten GripUp , GripRight , GripForward und GripPos.

Code-Beispiele

Der Code unten fügt einen Tool namens Stick in den lokalen Player Class.BackPack ein.Wenn der Spieler das Werkzeug aktiviert, druckt der Code die Werte der Greif属性 des Werkzeugs aus.

Griffstab

local Players = game:GetService("Players")
local player = Players.LocalPlayer
local tool = Instance.new("Tool")
tool.Name = "Stick"
tool.Parent = player.Backpack
local handle = Instance.new("Part")
handle.Name = "Handle"
handle.Parent = tool
handle.Size = Vector3.new(0.1, 3, 0.1)
handle.Color = Color3.fromRGB(108, 88, 75) -- Braun
tool.Activated:Connect(function()
print(tool.Grip)
print(tool.GripUp)
print(tool.GripRight)
print(tool.GripForward)
print(tool.GripPos)
end)

GripForward

Verborgen
Nicht repliziert
Parallel lesen

Eine der Eigenschaften, die die Orientierung eines Toolin der Hand eines Charakters spezifiziert.Dies repräsentiert die , und Werte der Greifrotationsmatrix.

Andere Werkzeug属性, die kontrollieren, wie ein Charakter ein Werkzeug hält, umfassen Tool.GripUp , Tool.GripRight und Tool.GripPos.Alle diese Eigenschaften werden in einer einzigen CFrame Eigenschaft gespeichert, die im Tool.Grip Eigenschaftenblock verwendet wird.

Code-Beispiele

Der Code unten fügt einen Tool namens Stick in den lokalen Player Class.BackPack ein.Wenn der Spieler das Werkzeug aktiviert, druckt der Code die Werte der Greif属性 des Werkzeugs aus.

Griffstab

local Players = game:GetService("Players")
local player = Players.LocalPlayer
local tool = Instance.new("Tool")
tool.Name = "Stick"
tool.Parent = player.Backpack
local handle = Instance.new("Part")
handle.Name = "Handle"
handle.Parent = tool
handle.Size = Vector3.new(0.1, 3, 0.1)
handle.Color = Color3.fromRGB(108, 88, 75) -- Braun
tool.Activated:Connect(function()
print(tool.Grip)
print(tool.GripUp)
print(tool.GripRight)
print(tool.GripForward)
print(tool.GripPos)
end)

GripPos

Verborgen
Nicht repliziert
Parallel lesen

Diese Eigenschaft steuert den positionalen Versatz der Schweißmatrix des Tool.Es ist eine von mehreren Eigenschaften, die verwendet werden, um zu positionieren, wie der Spielercharakter das Toolhält.

Andere Eigenschaften, die kontrollieren, wie ein Charakter ein Werkzeug hält, umfassen Tool.GripUp , Tool.GripRight und Tool.GripForward .Alle diese Eigenschaften werden in einer einzigen CFrame Eigenschaft gespeichert, die im Tool.Grip Eigenschaftenblock verwendet wird.

Code-Beispiele

Der Code unten fügt einen Tool namens Stick in den lokalen Player Class.BackPack ein.Wenn der Spieler das Werkzeug aktiviert, druckt der Code die Werte der Greif属性 des Werkzeugs aus.

Griffstab

local Players = game:GetService("Players")
local player = Players.LocalPlayer
local tool = Instance.new("Tool")
tool.Name = "Stick"
tool.Parent = player.Backpack
local handle = Instance.new("Part")
handle.Name = "Handle"
handle.Parent = tool
handle.Size = Vector3.new(0.1, 3, 0.1)
handle.Color = Color3.fromRGB(108, 88, 75) -- Braun
tool.Activated:Connect(function()
print(tool.Grip)
print(tool.GripUp)
print(tool.GripRight)
print(tool.GripForward)
print(tool.GripPos)
end)

GripRight

Verborgen
Nicht repliziert
Parallel lesen

Eine der Eigenschaften, die die Orientierung eines Toolin der Hand eines Charakters spezifiziert.Dies repräsentiert die , und Werte der Greifrotationsmatrix.

Andere Werkzeug属性, die kontrollieren, wie ein Charakter ein Werkzeug hält, umfassen Tool.GripUp , Tool.GripForward und Tool.GripPos.Alle diese Eigenschaften werden in einer einzigen CFrame Eigenschaft gespeichert, die im Tool.Grip Eigenschaftenblock verwendet wird.

Code-Beispiele

Der Code unten fügt einen Tool namens Stick in den lokalen Player Class.BackPack ein.Wenn der Spieler das Werkzeug aktiviert, druckt der Code die Werte der Greif属性 des Werkzeugs aus.

Griffstab

local Players = game:GetService("Players")
local player = Players.LocalPlayer
local tool = Instance.new("Tool")
tool.Name = "Stick"
tool.Parent = player.Backpack
local handle = Instance.new("Part")
handle.Name = "Handle"
handle.Parent = tool
handle.Size = Vector3.new(0.1, 3, 0.1)
handle.Color = Color3.fromRGB(108, 88, 75) -- Braun
tool.Activated:Connect(function()
print(tool.Grip)
print(tool.GripUp)
print(tool.GripRight)
print(tool.GripForward)
print(tool.GripPos)
end)

GripUp

Verborgen
Nicht repliziert
Parallel lesen

Eine der Eigenschaften, die die Orientierung eines Toolin der Hand eines Charakters spezifiziert.Dies repräsentiert die , und Werte der Greifrotationsmatrix.

Andere Werkzeug属性, die kontrollieren, wie ein Charakter ein Werkzeug hält, umfassen Tool.GripRight , Tool.GripForward und Tool.GripPos.Alle diese Eigenschaften werden in einer einzigen CFrame Eigenschaft gespeichert, die im Tool.Grip Eigenschaftenblock verwendet wird.

Code-Beispiele

Der Code unten fügt einen Tool namens Stick in den lokalen Player Class.BackPack ein.Wenn der Spieler das Werkzeug aktiviert, druckt der Code die Werte der Greif属性 des Werkzeugs aus.

Griffstab

local Players = game:GetService("Players")
local player = Players.LocalPlayer
local tool = Instance.new("Tool")
tool.Name = "Stick"
tool.Parent = player.Backpack
local handle = Instance.new("Part")
handle.Name = "Handle"
handle.Parent = tool
handle.Size = Vector3.new(0.1, 3, 0.1)
handle.Color = Color3.fromRGB(108, 88, 75) -- Braun
tool.Activated:Connect(function()
print(tool.Grip)
print(tool.GripUp)
print(tool.GripRight)
print(tool.GripForward)
print(tool.GripPos)
end)

ManualActivationOnly

Parallel lesen

Die Eigenschaft ManualActivationOnly prüft, ob die Tool ohne explizite Ausführung von Tool:Activate() in einem Skript, das. PL: die Skriptsaktiviert werden kann.

Wenn auf wahr gesetzt, feuert das Werkzeug nur Tool.Activated, wenn Tool:Activate() aufgerufen wird. Dies unterdrückt auch die ContextActionService:BindActivate()-Funktion.

Wenn auf false gesetzt, werden Mausklicks (wenn das Werkzeug ausgerüstet ist) auch Tool.Activated abfeuern.

Code-Beispiele

The code sample below creates Tool in the local player's Backpack that increases their WalkSpeed from 16 to 30 for 5 seconds.

This example uses the tool's Tool.ManualActivationOnly property as a debounce by setting the property to true when the player begins sprinting and to false when the player stops sprinting. As a result, when the player is sprinting, the tool cannot be re-activated.

Unequipping the tool also stops the player from sprinting by changing the WalkSpeed to 16.

Sprint Tool

local Players = game:GetService("Players")
local player = Players.LocalPlayer
local character = player.Character or player.CharacterAdded:Wait()
local humanoid = character:WaitForChild("Humanoid")
local tool = Instance.new("Tool")
tool.Name = "Sprint"
tool.RequiresHandle = false
tool.Parent = player:WaitForChild("Backpack")
function toolActivated()
humanoid.WalkSpeed = 30
tool.ManualActivationOnly = true
task.wait(5)
tool.ManualActivationOnly = false
humanoid.WalkSpeed = 16
end
tool.Activated:Connect(toolActivated)
tool.Unequipped:Connect(function()
humanoid.WalkSpeed = 16
end)

RequiresHandle

Parallel lesen

Diese Eigenschaft bestimmt, ob eine Tool Funktion ohne Ziehpunktfunktioniert.

Ein Werkzeug hat einen Griff, wenn es ein Kindersteil namens Griff enthält.Werkzeuge mit Griffen benötigen in der Regel, dass der Spieler sie ausrüstet, um ein Objekt zu halten, um sie zu verwenden, zum Beispiel Waffen.Werkzeuge ohne Griffe benötigen normalerweise nicht, dass der Spieler sie ausrüstet, um etwas zu halten, um sie zu verwenden, zum Beispiel "fliegen" oder "beschwören" Werkzeuge.

Wenn es auf true eingestellt ist, funktioniert das Werkzeug nur mit einem Ziehpunkt. Wenn es auf false eingestellt ist, funktioniert das Werkzeug sogar ohne Ziehpunkt.

ToolTip

Parallel lesen

Die Tooltip-Eigenschaft steuert die Nachricht, die angezeigt wird, wenn der Spieler:inmit Mouse über das Tool in seinem Backpack fährt.

Im Allgemeinen sollte der Wert dieser Eigenschaft beschreiben, was das Werkzeug ist oder seine Verwendung.Zum Instanzfür ein Schaufelwerkzeug können Sie wählen, den Tooltip auf:


tool.ToolTip = "Shovel"

or


tool.ToolTip = "Use to dig"

or


tool.ToolTip = "Shovel - Use to dig"

Methoden

Activate

()

Diese Funktion simuliert die Aktivierung des Tool. Das Werkzeug muss ausgerüstet sein, damit diese Funktion funktioniert.


Rückgaben

()

Code-Beispiele

The code below creates a Tool in the local player's Backpack that turns the player invisible when activated and visible when deactivated.

When equipped, the script simulates the tool being activated and turns the player invisible for 3 seconds and then simulates the tool being deactivated. Holding the left mouse button down turns the player invisible for up to 3 seconds, with a cooldown period of 1 second, or until the player releases their left mouse button.

Invisibility Tool

local Players = game:GetService("Players")
local player = Players.LocalPlayer
local character = player.Character
local tool = Instance.new("Tool")
tool.Name = "Invisibility Tool"
tool.RequiresHandle = false
tool.Parent = player.Backpack
local invisible = false
local function toolActivated()
if invisible then
return
end
invisible = true
for _, bodypart in pairs(character:GetChildren()) do
if bodypart:IsA("MeshPart") or bodypart:IsA("Part") then
bodypart.Transparency = 1
end
end
task.wait(3)
tool:Deactivate()
task.wait(1)
invisible = false
end
local function toolDeactivated()
if not invisible then
return
end
for _, bodypart in pairs(character:GetChildren()) do
if bodypart.Name ~= "HumanoidRootPart" then
if bodypart:IsA("MeshPart") or bodypart:IsA("Part") then
bodypart.Transparency = 0
end
end
end
end
local function toolEquipped()
tool:Activate()
end
tool.Equipped:Connect(toolEquipped)
tool.Activated:Connect(toolActivated)
tool.Deactivated:Connect(toolDeactivated)
tool.Unequipped:Connect(toolDeactivated)

Deactivate

()

Diese Funktion simuliert die Deaktivierung des Tool. Das Werkzeug muss ausgerüstet sein, damit diese Funktion funktioniert.


Rückgaben

()

Code-Beispiele

The code below creates a Tool in the local player's Backpack that turns the player invisible when activated and visible when deactivated.

When equipped, the script simulates the tool being activated and turns the player invisible for 3 seconds and then simulates the tool being deactivated. Holding the left mouse button down turns the player invisible for up to 3 seconds, with a cooldown period of 1 second, or until the player releases their left mouse button.

Invisibility Tool

local Players = game:GetService("Players")
local player = Players.LocalPlayer
local character = player.Character
local tool = Instance.new("Tool")
tool.Name = "Invisibility Tool"
tool.RequiresHandle = false
tool.Parent = player.Backpack
local invisible = false
local function toolActivated()
if invisible then
return
end
invisible = true
for _, bodypart in pairs(character:GetChildren()) do
if bodypart:IsA("MeshPart") or bodypart:IsA("Part") then
bodypart.Transparency = 1
end
end
task.wait(3)
tool:Deactivate()
task.wait(1)
invisible = false
end
local function toolDeactivated()
if not invisible then
return
end
for _, bodypart in pairs(character:GetChildren()) do
if bodypart.Name ~= "HumanoidRootPart" then
if bodypart:IsA("MeshPart") or bodypart:IsA("Part") then
bodypart.Transparency = 0
end
end
end
end
local function toolEquipped()
tool:Activate()
end
tool.Equipped:Connect(toolEquipped)
tool.Activated:Connect(toolActivated)
tool.Deactivated:Connect(toolDeactivated)
tool.Unequipped:Connect(toolDeactivated)

Ereignisse

Activated

Dieses Ereignis wird ausgelöst, wenn der Spieler klickt, während das Tool ausgerüstet ist.Es wird nicht abgefeuert, wenn die Ctrl Taste während des klickengedrückt wird.

Dieses Ereignis wird in der Regel verwendet, um eine Aktion auszuführen, wenn der Spieler das Toolverwendet, zum Beispiel, um eine Rakete von einer Toolaus zu starten.

Der folgende Codes, wenn er in einem LocalScript platziert wird, erstellt ein Werkzeug im lokalen Spieler:inBackpack und druckt "Werkzeug aktiviert" aus, wenn der Spieler klickt, während das erstellte Werkzeug ausgerüstet ist.


local Players = game:GetService("Players")
local tool = Instance.new("Tool")
tool.RequiresHandle = false
tool.Parent = Players.LocalPlayer.Backpack
function onActivation()
print("Tool activated")
end
tool.Activated:Connect(onActivation)

Deactivated

Dieses Ereignis wird ausgelöst, wenn der Spieler während der Ausrüstung und Aktivierung von Tool seine Maus loslässt.Es wird in der Regel verwendet, um eine Aktion auszuführen, wenn der Spieler aufhört, ein Toolzu verwenden.

Der folgende Codes, wenn er in einem LocalScript platziert wird, erstellt ein Werkzeug im lokalen Spieler:inBackpack und druckt "Werkzeug deaktiviert" aus, wenn der Spieler seinen Klick freigibt, während das Werkzeug ausgerüstet und aktiviert ist.


local Players = game:GetService("Players")
local tool = Instance.new("Tool")
tool.RequiresHandle = false
tool.Parent = Players.LocalPlayer.Backpack
function toolDeactivated()
print("Tool deactivated")
end
tool.Deactivated:Connect(toolDeactivated)

Equipped

Dieses Ereignis wird ausgelöst, wenn ein Spieler das Tool (aus ihrem Backpack herausnimmt).

Das Gegenteil dieses Ereignisses, Tool.Unequipped, kann verwendet werden, um zu bestimmen, wann der Spieler das Tool ausrüstet, indem er es in seinen Rucksack legt.

Beachten Sie, dass dieses Ereignis nicht feuert, wenn Tool.RequiresHandle aktiviert ist und kein Griff vorhanden ist.

Parameter

mouse: Mouse

Die Maus des Spieler:in.


Code-Beispiele

The example shown below will print "A tool was equipped" each time the tool is equipped by the player. Please note that the below example assumes that you've already defined what "Tool" is.

Print when a Player Equips a Tool

local Tool = script.Parent
local function onEquipped(_mouse)
print("The tool was equipped")
end
Tool.Equipped:Connect(onEquipped)

Unequipped

Dieses Ereignis wird ausgelöst, wenn ein Spieler die Tool (legt es in seine Backpack ) ablegt.

Das Gegenteil dieses Ereignisses, Tool.Equipped, kann verwendet werden, um zu bestimmen, wann der Spieler das Werkzeug ausrüstet, indem er es aus seinem Rucksack nimmt.

Beachten Sie, dass dieses Ereignis nicht feuert, wenn Tool.RequiresHandle aktiviert ist und kein Griff vorhanden ist.