How do I tween a with an alpha/timepoint

So, is it possible to tween with an alpha kinda like lerping where you can send an alpha but with tweens so you can start the tween at the middle of the tween with the easing style following the original duration. Here’s a visual I guess
esshow
And if you’re wondering “What for?”. So I can fire a remote to the client that will tween it with the current alpha and where it’s at for players that just joined.

I dont quite understand what you mean, but if you mean something like leaping a cframe then you can do something like this

game:GetService'TweenService':Create(object,TweenInfo.new(10,Enum.EasingStyle.Linear,Enum.EasingDirection.Out,0,true,0),{CFrame=Object.CFrame:Lerp(DesiredObject.CFrame+Vector3.new(0,10,0),.05)}):Play()

Basically, there’s easing styles right? So, I want the tween to start at a specific time of the easing style. For example in the middle like in the visual for the circular one.

I still don’t understand your sentence but, let me guess, for example we have a vector, from 0 to 1 , you want the tween to start from .5 to 1?

correct, with the easing style at 0.5 too.

I don’t think you can jump start from a specific time while tweening
most you can do is finding a tweeninfo that will fit with the result you want

And you also want to do it on the pervious created tween right? Like the pervious alpha.

You can use TweenService:GetValue() or put the alpha value through your own custom style function.

1 Like
local start = 0 --start
local goal = 5 --goal
local tweenInfo = TweenInfo.new(2, Enum.EasingStyle.Quad, Enum.EasingDirection.InOut)

local value = 0
local elapsed = 0
local cnStepped

local function onStepped(t, dt)
	elapsed = math.min(elapsed + dt, tweenInfo.Time)
	
	local alpha = game:GetService('TweenService'):GetValue(elapsed / tweenInfo.Time, tweenInfo.EasingStyle, tweenInfo.EasingDirection)
	
	value = start + (goal - start) * alpha --you might recongize this: it's the equation for a lerp
	
	print(value)
	
	if elapsed >= tweenInfo.Time then
		cnStepped:Disconnect()
	end
end

elapsed = tweenInfo.Time * 0.5 -- start from an alpha of 0.5

cnStepped = game:GetService('RunService').Stepped:Connect(onStepped)

you can see how I multiply the total time of the tween by 0.5 before I connect the step function, which there is your starting alpha