Please help me with tweenservice

I’m trying to make it so 2 tweens play at once I want to make it so when the face pops out I want it to move forward as its turning rn it only moves forward, then after it moves forward it turns finally, and how do I do tweens without doing waits between each tween

Here’s the code:


local TweenService = game:GetService("TweenService")
local rotationInfo = TweenInfo.new(3,Enum.EasingStyle.Linear,Enum.EasingDirection.InOut)
local stageFunctions = script.Parent.Parent.Parent
local Face = stageFunctions.Face.Handle

while true do
--Start of the loop of everything dark, and no flamethrowers, or lights
	
	wait(4) ---stays still for 25 seconds
	
--End of start, of the loop of everything dark, and no flamethrowers, or lights
	
	
--Function, Forward/back mask pop out, left, forward/back, right---------------------------------------------------------------------------------------------------------
	
local movingFace = TweenService:Create(Face, rotationInfo, { CFrame = Face.CFrame + Vector3.new(0, 0, 1)}) ---moves forward
    movingFace:Play()
	wait(2)
	movingFace:Cancel()
local rotatingFace = TweenService:Create(Face, rotationInfo, { CFrame = Face.CFrame * CFrame.fromEulerAnglesXYZ(0, 0, 0.9)}) ---rotates right
 	rotatingFace:Play()
	wait(1.25) --transition timing
	rotatingFace:Cancel()
	wait(5) --stays still```

There is a post about it…

The thing is this is between tween rotations it simpyly doesn’t got the correct position if I don’t add a wait, if i put them in the same line it won’t work, it’ll go either out of place or something because i dont have the wait but if i add the wait, then it waits until every tween then the other tween plays, courtine might work idk

courtine.wrap() will work for that, it’s made for that.
Do you know how to use it or would you like an example?

Yes, please an example to go with my script it takes me a while to get something.

Here is an example with transparency & Size tween

local TweenService = game:GetService("TweenService")


local Part1 = game.Workspace.Part1


local Tween1 = TweenService:Create(Part1, TweenInfo.new(), {Transparency = 1})
local Tween2 = TweenService:Create(Part1, TweenInfo.new(), {Size = Part.Size/2})

coroutine.wrap(function()
	Tween1:Play()
end)()
Tween2:Play()

I looked at that but the issue is that I have a wait between the moving face, and the rotating face if I remove those waits the rotate, the vector simply won’t work, it even goes out of place, and it won’t even do coroutine.wrap until those waits are officially over with, and if I put them up the tweens, the rotating, and moving face won’t show valid.

Can you show an example with my vector, and my rotating script if you don’t mind, I’d appreciate it very much… I don’t really know where to put the coroutine.wrap in the script, and I have to cancel my tweens if I don’t they go out of place, and won’t work.

It doesnt work with rotation, and moving at the same time only transparency and size