I'm trying to move a sheathed sword that I welded to the players torso but when I try it doesn't move?
local sheathe = sheathedSword:FindFirstChild("Sheathe") sheathe.CFrame = char.Torso.CFrame sheathe.CFrame:ToObjectSpace(char.Torso.CFrame - Vector3.new(0, 5, 0) sheathe.CFrame = sheathe.CFrame * CFrame.Angles(math.rad(-70.33), math.rad(0), math.rad(-90)) createWeldConstraint(char.Torso, sheathe)
you dont need to use toObjectSpace since you are refrencing the parts cframe you want it to go to. just do
sheathe.CFrame = char.Torso.CFrame * CFrame.new(0,5,0) -- you may have to play with these values
So what I did to fix the problem and make it appear in the same position no matter the character's rotation was CFrame:ToWorldSpace()
https://developer.roblox.com/en-us/articles/object-world-space
local sheathe = sheathedSword:FindFirstChild("Sheathe") sheathe.CFrame = char.Torso.CFrame ` --Create the offset you want local offset = CFrame.new("Your offset") --Make the CFrame relative to the world position of the torso sheathe.CFrame = char.Torso:ToWorldSpace(offset) sheathe.CFrame = sheathe.CFrame * CFrame.Angles(math.rad(-70.33), math.rad(0), math.rad(-90)) createWeldConstraint(char.Torso, sheathe)