5#include "CoreMinimal.h"
8#include "JetPackComponent.generated.h"
14UCLASS( ClassGroup=(
Custom), meta=(BlueprintSpawnableComponent), Blueprintable )
15class PROJECTX_API UJetPackComponent :
public UActorComponent
17 GENERATED_UCLASS_BODY()
20 virtual
void BeginPlay() override;
21 virtual
void EndPlay(const EEndPlayReason::Type EndPlayReason) override;
23 virtual
void SetJetPack(
bool bEnable);
26 virtual
void OnRep_JetPackEnabled();
28 virtual
void CheckCustomMovementToggle(
ECustomMovementType CustomMovementType,
bool bToggledState);
31 virtual
void StartJetPack();
32 virtual
void StopJetPack();
34 FORCEINLINE
bool IsEnabled()
const {
return bJetPackEnabled; }
36 virtual void SetupPlayerInputComponent();
39 UPROPERTY(BlueprintAssignable)
40 FJetPackUpdateSignature OnJetPackStart;
41 UPROPERTY(BlueprintAssignable)
42 FJetPackUpdateSignature OnJetPackStop;
48 UPROPERTY(ReplicatedUsing = OnRep_JetPackEnabled)
49 bool bJetPackEnabled = false;
51 bool bWasJetPackEnabled = false;
DECLARE_DYNAMIC_MULTICAST_DELEGATE(FJetPackUpdateSignature)
ECustomMovementType
Definition: PlayerStructs.h:15
Definition: ProjectXCharacter.h:128