FTimeLine SetTimelineFinishedFunc the call-back is never called

Hi,

This question is similar to the other question regarding the FTimeline SetPlaybackPosition InterpFuncStatic is cleared.

This time I’ve tried to setup the SetTimelineFinishedFunc to see if I can catch the event.

In the .h :

	UFUNCTION()
	void EnergyLevelTimelineFinish();

	/** @brief The energy level timeline onfinish function callback. */
	FOnTimelineEvent	EnergyLevelTimelineFinishFunction;

In the .cpp, like for the other question :

	if (EnergyUpCurve)
	{
		EnergyLevelTimeline = FTimeline();
		EnergyLevelTimelineTickFunction.BindUFunction(this, "EnergyLevelTimelineTick");
		EnergyLevelTimeline.AddInterpFloat(EnergyUpCurve, EnergyLevelTimelineTickFunction);
		EnergyLevelTimelineFinishFunction.BindUFunction(this, "EnergyLevelTimelineFinish");
		EnergyLevelTimeline.SetTimelineFinishedFunc(EnergyLevelTimelineFinishFunction);
	}

I’ve debugged the code, but the function is never called :

void AKPlayerCharacter::EnergyLevelTimelineFinish()
{
	UE_LOG(LogKSGM, Log, TEXT("AKPlayerCharacter::EnergyLevelTimelineFinish called."));
}

In fact, the function void FTimeline::TickTimeline(float DeltaTime) is never called during the time line play.

Do I have to setup something for having this function called on every tick ?

Have a nice day,
Dominique

In fact I didn’t understood the FTimeLine struct.
TickTimeline(float DeltaTime) function must be called using a timer or from a Tick() function.

If you do that, then all call-back functions are called.

Dominique