I’m trying to tween a train model to move. All the parts of the model including the primary part are anchored and all the parts are welded to the primary part. I am moving the train using CFrame. The problem is that only the primary part moves as the rest of the model stays still. What could be causing this? To prove all the parts are welded and anchored I have that little for-loop at the bottom which prints successfully for all parts of the model.
local TweenService = game:GetService("TweenService")
local train = game.Workspace["Subway Multiple Unit"]
local primary = train.PrimaryPart
local Info = TweenInfo.new(
15,
Enum.EasingStyle.Linear,
Enum.EasingDirection.Out,
0,
false,
0
)
local position1 = {
CFrame = CFrame.new(9.45, 7.75, 1156.25)
}
local position2 = {
CFrame = CFrame.new(9.45, 7.75, -1014.75) * CFrame.Angles(math.rad(0),math.rad(180),math.rad(0))
}
local move2 = TweenService:Create(primary, Info, position2)
wait(5)
move2:Play()
print("Moved")
for i,v in pairs(train:GetDescendants()) do
if v:IsA("BasePart") and (v ~= primary) then
if v.WeldConstraint.Part0 == v and v.WeldConstraint.Part1 == primary and v.Anchored == true then
print("Model is welded")
end
end
end