of     1   

xMontae
#149905520Sunday, November 16, 2014 10:33 PM GMT

My sword model have about 22 Parts with the names "Part" and "Wedge" So I inserted a Tool into Backpack then I pasted my Sword model into the Tool(Un-grouped), I have the brick the player will be holding named "Handle" and all the bricks Anchored to false. I have a basic Weld script with an OnEquiped Function from the Roblox wiki however I don't believe it is working because when I select the Tool it doesn't come out how I want it to. Can anybody help please?
VolcanoINC
#149906095Sunday, November 16, 2014 10:40 PM GMT

The weld script might not be given the correct CFrame values. Or it tries to get the CFrame values out of the tool as you equip it, but by the time the server knows you did so, the parts already started falling apart. Could you post the weld script here?
xMontae
#149906634Sunday, November 16, 2014 10:48 PM GMT

Sure it is(I'm new at scripting) x = script.Parent function onEquipped() local w1 = Instance.new("Weld") w1.Parent = script.Parent.Handle -- This is the original Handle. w1.Part0 = w1.Parent w1.Part1 = script.Parent.Part -- Change PARTNAME to your second part's name. w1.C1 = CFrame.Angles(0, 0, 0) * CFrame.new(0, 0, 0) local w2 = Instance.new("Weld") w2.Parent = script.Parent.Handle -- This is the original Handle. w2.Part0 = w1.Parent w2.Part1 = script.Parent.Part -- Change PARTNAME to your second part's name. w2.C1 = CFrame.Angles(0, 0, 0) * CFrame.new(0, 0, 0) local w3 = Instance.new("Weld") w3.Parent = script.Parent.Handle -- This is the original Handle. w3.Part0 = w1.Parent w3.Part1 = script.Parent.Part -- Change PARTNAME to your second part's name. w3.C1 = CFrame.Angles(0, 0, 0) * CFrame.new(0, 0, 0) local w4 = Instance.new("Weld") w4.Parent = script.Parent.Handle -- This is the original Handle. w4.Part0 = w1.Parent w4.Part1 = script.Parent.Part -- Change PARTNAME to your second part's name. w4.C1 = CFrame.Angles(0, 0, 0) * CFrame.new(0, 0, 0) local w5 = Instance.new("Weld") w5.Parent = script.Parent.Handle -- This is the original Handle. w5.Part0 = w1.Parent w5.Part1 = script.Parent.Part -- Change PARTNAME to your second part's name. w5.C1 = CFrame.Angles(0, 0, 0) * CFrame.new(0, 0, 0) local w6 = Instance.new("Weld") w6.Parent = script.Parent.Handle -- This is the original Handle. w6.Part0 = w1.Parent w6.Part1 = script.Parent.Part -- Change PARTNAME to your second part's name. w6.C1 = CFrame.Angles(0, 0, 0) * CFrame.new(0, 0, 0) local w7 = Instance.new("Weld") w7.Parent = script.Parent.Handle -- This is the original Handle. w7.Part0 = w1.Parent w7.Part1 = script.Parent.Part -- Change PARTNAME to your second part's name. w7.C1 = CFrame.Angles(0, 0, 0) * CFrame.new(0, 0, 0) local w8 = Instance.new("Weld") w8.Parent = script.Parent.Handle -- This is the original Handle. w8.Part0 = w1.Parent w8.Part1 = script.Parent.Part -- Change PARTNAME to your second part's name. w8.C1 = CFrame.Angles(0, 0, 0) * CFrame.new(0, 0, 0) local w9 = Instance.new("Weld") w9.Parent = script.Parent.Handle -- This is the original Handle. w9.Part0 = w1.Parent w9.Part1 = script.Parent.Part -- Change PARTNAME to your second part's name. w9.C1 = CFrame.Angles(0, 0, 0) * CFrame.new(0, 0, 0) local w10 = Instance.new("Weld") w10.Parent = script.Parent.Handle -- This is the original Handle. w10.Part0 = w1.Parent w10.Part1 = script.Parent.Wedge -- Change PARTNAME to your second part's name. w10.C1 = CFrame.Angles(0, 0, 0) * CFrame.new(0, 0, 0) local w11 = Instance.new("Weld") w11.Parent = script.Parent.Handle -- This is the original Handle. w11.Part0 = w1.Parent w11.Part1 = script.Parent.Wedge -- Change PARTNAME to your second part's name. w11.C1 = CFrame.Angles(0, 0, 0) * CFrame.new(0, 0, 0) local w12 = Instance.new("Weld") w12.Parent = script.Parent.Handle -- This is the original Handle. w12.Part0 = w1.Parent w12.Part1 = script.Parent.Wedge -- Change PARTNAME to your second part's name. w12.C1 = CFrame.Angles(0, 0, 0) * CFrame.new(0, 0, 0) local w13 = Instance.new("Weld") w13.Parent = script.Parent.Handle -- This is the original Handle. w13.Part0 = w1.Parent w13.Part1 = script.Parent.Wedge -- Change PARTNAME to your second part's name. w13.C1 = CFrame.Angles(0, 0, 0) * CFrame.new(0, 0, 0) local w14 = Instance.new("Weld") w14.Parent = script.Parent.Handle -- This is the original Handle. w14.Part0 = w1.Parent w14.Part1 = script.Parent.Wedge -- Change PARTNAME to your second part's name. w14.C1 = CFrame.Angles(0, 0, 0) * CFrame.new(0, 0, 0) local w15 = Instance.new("Weld") w15.Parent = script.Parent.Handle -- This is the original Handle. w15.Part0 = w1.Parent w15.Part1 = script.Parent.Wedge -- Change PARTNAME to your second part's name. w15.C1 = CFrame.Angles(0, 0, 0) * CFrame.new(0, 0, 0) local w16 = Instance.new("Weld") w16.Parent = script.Parent.Handle -- This is the original Handle. w16.Part0 = w1.Parent w16.Part1 = script.Parent.Wedge -- Change PARTNAME to your second part's name. w16.C1 = CFrame.Angles(0, 0, 0) * CFrame.new(0, 0, 0) local w17 = Instance.new("Weld") w17.Parent = script.Parent.Handle -- This is the original Handle. w17.Part0 = w1.Parent w17.Part1 = script.Parent.Wedge -- Change PARTNAME to your second part's name. w17.C1 = CFrame.Angles(0, 0, 0) * CFrame.new(0, 0, 0) local w18 = Instance.new("Weld") w18.Parent = script.Parent.Handle -- This is the original Handle. w18.Part0 = w1.Parent w18.Part1 = script.Parent.Wedge -- Change PARTNAME to your second part's name. w18.C1 = CFrame.Angles(0, 0, 0) * CFrame.new(0, 0, 0) local w19 = Instance.new("Weld") w19.Parent = script.Parent.Handle -- This is the original Handle. w19.Part0 = w1.Parent w19.Part1 = script.Parent.Wedge -- Change PARTNAME to your second part's name. w19.C1 = CFrame.Angles(0, 0, 0) * CFrame.new(0, 0, 0) local w20 = Instance.new("Weld") w20.Parent = script.Parent.Handle -- This is the original Handle. w20.Part0 = w1.Parent w20.Part1 = script.Parent.Wedge -- Change PARTNAME to your second part's name. w20.C1 = CFrame.Angles(0, 0, 0) * CFrame.new(0, 0, 0) local w21 = Instance.new("Weld") w21.Parent = script.Parent.Handle -- This is the original Handle. w21.Part0 = w1.Parent w21.Part1 = script.Parent.Wedge -- Change PARTNAME to your second part's name. w21.C1 = CFrame.Angles(0, 0, 0) * CFrame.new(0, 0, 0) local w22 = Instance.new("Weld") w22.Parent = script.Parent.Handle -- This is the original Handle. w22.Part0 = w1.Parent w22.Part1 = script.Parent.Wedge -- Change PARTNAME to your second part's name. w22.C1 = CFrame.Angles(0, 0, 0) * CFrame.new(0, 0, 0) x.Handle.Anchored = false x.Part.Anchored = false x.Part.Anchored = false x.Part.Anchored = false x.Part.Anchored = false x.Part.Anchored = false x.Part.Anchored = false x.Part.Anchored = false x.Part.Anchored = false x.Part.Anchored = false x.Wedge.Anchored = false x.Wedge.Anchored = false x.Wedge.Anchored = false x.Wedge.Anchored = false x.Wedge.Anchored = false x.Wedge.Anchored = false x.Wedge.Anchored = false x.Wedge.Anchored = false x.Wedge.Anchored = false x.Wedge.Anchored = false x.Wedge.Anchored = false x.Wedge.Anchored = false x.Wedge.Anchored = false end script.Parent.Equipped:connect(onEquipped)
VolcanoINC
#149906892Sunday, November 16, 2014 10:51 PM GMT

Ah, alright. So it's setting the relative CFrames to zero offset for both position and rotation, which causes the problem you're describing. Play around with the parts of the script that say CFrame.Angles(0,0,0) * CFrame.new(0,0,0) -- change the numbers and see if you can't make it place all the parts correctly.
xMontae
#149907228Sunday, November 16, 2014 10:55 PM GMT

Ok I will try that, Thanks alot !

    of     1