I am making a sequence where a part comes flying of after launching and it should tween to one position and then another 4 times (in different positions.) When I go to test this. Nothing happens, until the last tween which plays. I want the middle tweens to play as well.
The script is here:
local TweenService = game:GetService("TweenService") local part = game.Workspace.Fakeship local part2 = script.Parent.Parent.Parent.Parent.Parent.knockout script.Parent.MouseButton1Click:Connect(function() if script.Parent.alreadylauched.Value == false then script.Parent.alreadylauched.Value = true wait(4) local tweenInfo = TweenInfo.new( 5, -- Length Enum.EasingStyle.Linear, -- Easing Style Enum.EasingDirection.Out, -- Easing Direction 0, -- Number of times the tween will repeat false, -- Repeat? 2 -- Delay Between each tween ) local goal = { CFrame = CFrame.new(-3623.92871, 1653.40479, 513.185974)* CFrame.Angles(0,math.rad(0), 0) } local tween = TweenService:Create(part, tweenInfo, goal) tween:Play() wait(3) local explos = Instance.new("Explosion") explos.ExplosionType = ("NoCraters") explos.Parent = game.Workspace.explosionpos explos.Position = game.Workspace.explosionpos.Position end wait(2) local tweenInfo2 = TweenInfo.new( 0.6, -- Length Enum.EasingStyle.Linear, -- Easing Style Enum.EasingDirection.Out, -- Easing Direction 0, -- Number of times the tween will repeat false, -- Repeat? 2 -- Delay Between each tween ) local goal2 = { CFrame = CFrame.new(-3623.19189, 1558.49438, 510.58075) } local tween2 = TweenService:Create(part2, tweenInfo2, goal2) print("yeet") tween2:Play() wait(0.6) local goal3 = { CFrame = CFrame.new(-3621.40894, 1554.25354, 522.362305) } local tween3 = TweenService:Create(part2, tweenInfo2, goal3) print("yeet") tween3:Play() wait(0.6) local goal4 = { CFrame = CFrame.new(-3622.90674, 1549.49878, 520.497253) } local tween4 = TweenService:Create(part2, tweenInfo2, goal4) print("yeet") tween4:Play() wait(1) local goal5 = { CFrame = CFrame.new(-3636.53809, 1554.23535, 520.807922) } local tween5 = TweenService:Create(part2, tweenInfo2, goal5) print("yeet") tween5:Play() end)
The script is inside of a surface gui text button which says launch
The very first tween before the explosion is another part which works perfectly fine. I tried putting a print before each time the tween plays. The timings are fine as they all printed within the right times. I then tried putting the wait after each tween:play() and set the wait time to the time it takes for the tween to finish. Still didn't work. I have been trying this for a while so help would be appreciated.