Scripting Helpers is winding down operations and is now read-only. More info→
Ad
Log in to vote
0

A part within my model is not getting welded, but all the other parts are?

Asked by 2 years ago
Edited 2 years ago

Hello,

I am new to scripting and messing around with CFraming. I have a model I am CFraming based off its primary part, but one of the parts just won't weld with my weld script. This is a problem, because it is being used as the position to look at for another part in my build. Any ideas? I will post the script below.

local primarypart = script.Parent.main

for i, v in pairs(script.Parent:GetChildren()) do
    print(v.Name)
    local weld = Instance.new("Weld", v)
    weld.C0 = primarypart.CFrame:inverse()
    weld.Part0 = primarypart
    weld.C1 = v.CFrame:inverse()
    weld.Part1 = v
end

Thanks for the help!

Edit:

I've just gotten it to work by specifically welding that part before welding the rest of the model. Why would this be the case?

New Script:

local primarypart = script.Parent.main

script.Parent:WaitForChild("OJ")
local ojweld = Instance.new("Weld", script.Parent.OJ)
ojweld.C0 = primarypart.CFrame:inverse()
ojweld.Part0 = primarypart
ojweld.C1 = script.Parent.OJ.CFrame:inverse()
ojweld.Part1 = script.Parent.OJ

for i, v in pairs(script.Parent:GetChildren()) do
    print(v.Name)
    local weld = Instance.new("Weld", v)
    weld.C0 = primarypart.CFrame:inverse()
    weld.Part0 = primarypart
    weld.C1 = v.CFrame:inverse()
    weld.Part1 = v
end

Answer this question