We use cookies on this site to enhance your user experience
Collapse Sidebar


This function makes the Humanoid equip the given Tool.

The below example would cause a Player to equip a tool in Workspace named ‘Tool’.

local Players = game:GetService("Players")

local player = Players:FindFirstChildOfClass(“Player”)
if player and player.Character then
	local humanoid = player.Character:FindFirstChildOfClass("Humanoid")
	if humanoid then
		local tool = workspace:FindFirstChild("Tool")
		if tool then

When this function is called, the humanoid will automatically unequip any Tool|Tools that it currently has equipped

Although they will be equipped, Tool|Tools for which Tool/RequiresHandle is true will not function if they have no handle, regardless if this function is used to equip them or not

See also

  • To unequip tools, use Humanoid/UnequipTools


Name Type Default Description

The Tool to equip


Return Type Summary

No return

Code Samples

Creating a Colorful Brick Tool

The code below creates a new tool and places into the Players/LocalPlayer's Player/Backpack. Then, the code equips the tool for the player user Humanoid/EquipTool.

When the tool is equipped and the player uses it (e.g. pressed their mouse button in-game), the code spawns a new BasePart|part at the position of the click using the Humanoid/TargetPoint position. The code also sets several of the part’s properties, such as giving it a random BasePart/BrickColor.

local player = game.Players.LocalPlayer
local character = player.CharacterAdded:wait()
local humanoid = character.Humanoid

-- Make a new tool and handle and put it in the player's Backpack
local function makeTool()
	-- Create tool
	local tool = Instance.new("Tool")
	tool.Parent = player:WaitForChild("Backpack")

	-- Create tool handle
	local handle = Instance.new("Part")
	handle.Name = "Handle"
	handle.Parent = tool
	handle.BrickColor = BrickColor.Random()
	-- Enable and equip tool
	tool.Enabled = true

	-- Handle tool use

-- Create a new randomly colored part at *pos* world position
local function spawnPart(pos)
	local part = Instance.new("Part")
	part.Anchored = true
	part.Size = Vector3.new(1,1,1)
	part.Position = pos
	part.Parent = game.Workspace
	part.BrickColor = BrickColor.Random()

-- Spawn a new part at TargetPoint when the tool is activated
function onActivated()

-- Make a new tool when the LocalScript first runs