You've already forked UnrealEngineUWP
mirror of
https://github.com/izzy2lost/UnrealEngineUWP.git
synced 2026-03-26 18:15:20 -07:00
Fixed getter functions for the Sequence Player Library
#jira UE-139605 #rb aaron.cox, jose.villarroel #robomerge UE5-Main #preflight 61eb0e9145399e9f5040aa29 [CL 18694698 by koray hagen in 5.0 branch]
This commit is contained in:
@@ -102,67 +102,66 @@ FSequencePlayerReference USequencePlayerLibrary::SetSequenceWithInertialBlending
|
||||
return SequencePlayer;
|
||||
}
|
||||
|
||||
float USequencePlayerLibrary::GetAccumulatedTime(const FSequencePlayerReference& SequencePlayer)
|
||||
FSequencePlayerReference USequencePlayerLibrary::GetSequence(const FSequencePlayerReference& SequencePlayer, UAnimSequenceBase*& SequenceBase)
|
||||
{
|
||||
SequencePlayer.CallAnimNodeFunction<FAnimNode_SequencePlayer>(
|
||||
TEXT("GetAccumulatedTime"),
|
||||
[](FAnimNode_SequencePlayer& InSequencePlayer)
|
||||
TEXT("GetSequence"),
|
||||
[&SequenceBase](FAnimNode_SequencePlayer& InSequencePlayer)
|
||||
{
|
||||
return InSequencePlayer.GetAccumulatedTime();
|
||||
SequenceBase = InSequencePlayer.GetSequence();
|
||||
});
|
||||
|
||||
UE_LOG(LogSequencePlayerLibrary, Warning, TEXT("Could not get accumulated time on sequence player."));
|
||||
return 0.f;
|
||||
return SequencePlayer;
|
||||
}
|
||||
|
||||
float USequencePlayerLibrary::GetAccumulatedTime(const FSequencePlayerReference& SequencePlayer)
|
||||
{
|
||||
float AccumulatedTime = 0.f;
|
||||
SequencePlayer.CallAnimNodeFunction<FAnimNode_SequencePlayer>(
|
||||
TEXT("GetAccumulatedTime"),
|
||||
[&AccumulatedTime](FAnimNode_SequencePlayer& InSequencePlayer)
|
||||
{
|
||||
AccumulatedTime = InSequencePlayer.GetAccumulatedTime();
|
||||
});
|
||||
|
||||
return AccumulatedTime;
|
||||
}
|
||||
|
||||
float USequencePlayerLibrary::GetStartPosition(const FSequencePlayerReference& SequencePlayer)
|
||||
{
|
||||
float StartPosition = 0.f;
|
||||
SequencePlayer.CallAnimNodeFunction<FAnimNode_SequencePlayer>(
|
||||
TEXT("GetStartPosition"),
|
||||
[](FAnimNode_SequencePlayer& InSequencePlayer)
|
||||
[&StartPosition](FAnimNode_SequencePlayer& InSequencePlayer)
|
||||
{
|
||||
return InSequencePlayer.GetStartPosition();
|
||||
StartPosition = InSequencePlayer.GetStartPosition();
|
||||
});
|
||||
|
||||
UE_LOG(LogSequencePlayerLibrary, Warning, TEXT("Could not get start position on sequence player."));
|
||||
return 0.f;
|
||||
return StartPosition;
|
||||
}
|
||||
|
||||
float USequencePlayerLibrary::GetPlayRate(const FSequencePlayerReference& SequencePlayer)
|
||||
{
|
||||
float PlayRate = 1.f;
|
||||
SequencePlayer.CallAnimNodeFunction<FAnimNode_SequencePlayer>(
|
||||
TEXT("GetPlayRate"),
|
||||
[](FAnimNode_SequencePlayer& InSequencePlayer)
|
||||
[&PlayRate](FAnimNode_SequencePlayer& InSequencePlayer)
|
||||
{
|
||||
return InSequencePlayer.GetPlayRate();
|
||||
PlayRate = InSequencePlayer.GetPlayRate();
|
||||
});
|
||||
|
||||
UE_LOG(LogSequencePlayerLibrary, Warning, TEXT("Could not get play rate on sequence player."));
|
||||
return 1.f;
|
||||
return PlayRate;
|
||||
}
|
||||
|
||||
bool USequencePlayerLibrary::GetLoopAnimation(const FSequencePlayerReference& SequencePlayer)
|
||||
{
|
||||
bool bLoopAnimation = false;
|
||||
SequencePlayer.CallAnimNodeFunction<FAnimNode_SequencePlayer>(
|
||||
TEXT("GetLoopAnimation"),
|
||||
[](FAnimNode_SequencePlayer& InSequencePlayer)
|
||||
[&bLoopAnimation](FAnimNode_SequencePlayer& InSequencePlayer)
|
||||
{
|
||||
return InSequencePlayer.GetLoopAnimation();
|
||||
bLoopAnimation = InSequencePlayer.GetLoopAnimation();
|
||||
});
|
||||
|
||||
UE_LOG(LogSequencePlayerLibrary, Warning, TEXT("Could not get looping state on sequence player."));
|
||||
return false;
|
||||
}
|
||||
|
||||
UAnimSequenceBase* USequencePlayerLibrary::GetSequence(const FSequencePlayerReference& SequencePlayer)
|
||||
{
|
||||
SequencePlayer.CallAnimNodeFunction<FAnimNode_SequencePlayer>(
|
||||
TEXT("GetSequence"),
|
||||
[](FAnimNode_SequencePlayer& InSequencePlayer)
|
||||
{
|
||||
return InSequencePlayer.GetSequence();
|
||||
});
|
||||
|
||||
UE_LOG(LogSequencePlayerLibrary, Warning, TEXT("Could not get sequence on sequence player."));
|
||||
return nullptr;
|
||||
return bLoopAnimation;
|
||||
}
|
||||
@@ -60,6 +60,10 @@ public:
|
||||
UFUNCTION(BlueprintCallable, Category = "Sequence Player", meta = (BlueprintThreadSafe))
|
||||
static FSequencePlayerReference SetSequenceWithInertialBlending(const FAnimUpdateContext& UpdateContext, const FSequencePlayerReference& SequencePlayer, UAnimSequenceBase* Sequence, float BlendTime = 0.2f);
|
||||
|
||||
/** Get the current sequence of the sequence player */
|
||||
UFUNCTION(BlueprintCallable, Category = "Sequence Player", meta = (BlueprintThreadSafe))
|
||||
static FSequencePlayerReference GetSequence(const FSequencePlayerReference& SequencePlayer, UPARAM(Ref) UAnimSequenceBase*& SequenceBase);
|
||||
|
||||
/** Gets the current accumulated time of the sequence player */
|
||||
UFUNCTION(BlueprintCallable, Category = "Sequence Player", meta = (BlueprintThreadSafe))
|
||||
static float GetAccumulatedTime(const FSequencePlayerReference& SequencePlayer);
|
||||
@@ -75,8 +79,4 @@ public:
|
||||
/** Get the looping state of the sequence player */
|
||||
UFUNCTION(BlueprintCallable, Category = "Sequence Player", meta = (BlueprintThreadSafe))
|
||||
static bool GetLoopAnimation(const FSequencePlayerReference& SequencePlayer);
|
||||
|
||||
/** Get the current sequence of the sequence player */
|
||||
UFUNCTION(BlueprintCallable, Category = "Sequence Player", meta = (BlueprintThreadSafe))
|
||||
static UAnimSequenceBase* GetSequence(const FSequencePlayerReference& SequencePlayer);
|
||||
};
|
||||
Reference in New Issue
Block a user