When I try re-equipping a tool to a character, it gets equipped, then just falls through my hands and through the world. I’ve tried just using wait() as well. I want the shortest possible wait
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local Player = Players.LocalPlayer
local Character = Player.Character or Player.CharacterAdded:Wait()
local Backpack = Player:WaitForChild("Backpack")
local Humanoid = Character:WaitForChild("Humanoid")
Backpack.ChildAdded:Connect(function(child)
if child:IsA("Tool") then
RunService.Stepped:Wait() -- Wait
Humanoid:EquipTool(child)
end
end)
I think this happens due to the fact the touch interest losts control when you equip and unequip things too quickly making the handle which is the touch interest target fall, you can do instead is add a touch interest instance inside one of the arm based on the user’s RType (R6, R15 and Rthro) when the humanoid equips the tool function.
Well before continuing, stop that auto-equip. You have it so it will immediately try to re-equip when you
unequip. Are you trying to prevent the player from unequipping?