RealtimeStyleTransferRuntime/Source/LyraGame/AbilitySystem/Abilities/LyraGameplayAbility_Jump.h

42 lines
1.3 KiB
C
Raw Permalink Normal View History

2022-05-23 18:41:30 +00:00
// Copyright Epic Games, Inc. All Rights Reserved.
#pragma once
2022-09-13 07:18:28 +00:00
#include "GameplayAbilitySpec.h"
2022-05-23 18:41:30 +00:00
#include "LyraGameplayAbility.h"
2022-09-13 07:18:28 +00:00
#include "UObject/UObjectGlobals.h"
2022-05-23 18:41:30 +00:00
#include "LyraGameplayAbility_Jump.generated.h"
2022-09-13 07:18:28 +00:00
class UObject;
struct FFrame;
struct FGameplayAbilityActorInfo;
struct FGameplayTagContainer;
2022-05-23 18:41:30 +00:00
/**
* ULyraGameplayAbility_Jump
*
* Gameplay ability used for character jumping.
*/
UCLASS(Abstract)
class ULyraGameplayAbility_Jump : public ULyraGameplayAbility
{
GENERATED_BODY()
public:
ULyraGameplayAbility_Jump(const FObjectInitializer& ObjectInitializer = FObjectInitializer::Get());
protected:
virtual bool CanActivateAbility(const FGameplayAbilitySpecHandle Handle, const FGameplayAbilityActorInfo* ActorInfo, const FGameplayTagContainer* SourceTags, const FGameplayTagContainer* TargetTags, FGameplayTagContainer* OptionalRelevantTags) const override;
virtual void EndAbility(const FGameplayAbilitySpecHandle Handle, const FGameplayAbilityActorInfo* ActorInfo, const FGameplayAbilityActivationInfo ActivationInfo, bool bReplicateEndAbility, bool bWasCancelled) override;
UFUNCTION(BlueprintCallable, Category = "Lyra|Ability")
void CharacterJumpStart();
UFUNCTION(BlueprintCallable, Category = "Lyra|Ability")
void CharacterJumpStop();
};