Hello! So, my tools inside the game are scaled up randomly (My fishes have weights) And I want to make it so that whenever they scale up, they still look good for when the player is holding them! How could I fix that?
Example:
you see how in the first one its too small so it doesnt touch my hand, and in the second one its too big so it noclips me -
How can i make them look normal ever after scaled?
is there anyway i could for example make it so that the game detects when the fish is noclipping or not touching arm and moves them closer… idk.
You can try to calculate the distance between the object and the player’s hand then subtract the object’s size/2. Use this to make the distance 0.
You can achieve what I believe you are looking for by simply adding an offset to the “RightGrip” weld whenever a tool is equipped. Example:

This is how I did it:
local players = game:GetService("Players")
local tool = script.Parent
local localplayer = players.LocalPlayer
local fish = script.Parent.Handle
tool.Equipped:Connect(function()
local char = localplayer.Character
local rightgrip : Weld = char:FindFirstChild("Right Arm"):FindFirstChild("RightGrip")
rightgrip.C1 = CFrame.new(-fish.Size.X/2, 0,0) * rightgrip.C1.Rotation
end)
This also replicates on the server because the user controls their character, so remote events aren’t necessary in this case.
1 Like