Payback 0.0.1
CK Graduation Project
로딩중...
검색중...
일치하는것 없음
GA_EnemyRangedAttack.h
이 파일의 문서화 페이지로 가기
1// Fill out your copyright notice in the Description page of Project Settings.
2
3#pragma once
4
7#include "GA_EnemyRangedAttack.generated.h"
8
9class ACharacter;
10class UAbilityTask_WaitGameplayEvent;
11class UProjectileLauncherComponent;
12class USkeletalMeshComponent;
13class UStaticMeshComponent;
14
15UCLASS()
16class CK_UE_API UGA_EnemyRangedAttack : public UGA_EnemyAttack
17{
18 GENERATED_BODY()
19
20public:
21 virtual void EndAbility(const FGameplayAbilitySpecHandle Handle, const FGameplayAbilityActorInfo* ActorInfo, const FGameplayAbilityActivationInfo ActivationInfo, bool bReplicateEndAbility, bool bWasCancelled) override;
22
23protected:
24 virtual void ApplyCombatData() override;
25 virtual bool PrepareAttack() override;
26 virtual bool ShouldSetupHitCheck() const override;
27
28 UFUNCTION()
29 void OnProjectileShow(FGameplayEventData Payload);
30
31 UFUNCTION()
32 void OnProjectileLaunch(FGameplayEventData Payload);
33
34 bool SetupProjectileEventTasks();
35 TOptional<FVector> GetGroundTargetLocation(const ACharacter* TargetCharacter) const;
36 void SetProjectileVisible(bool bVisible) const;
37
38protected:
39 UPROPERTY(Transient)
40 FEnemyRangedAttackData RangedAttackData;
41
42 UPROPERTY(Transient)
43 TWeakObjectPtr<UProjectileLauncherComponent> CachedProjectileLauncherComp;
44
45 UPROPERTY(Transient)
46 TWeakObjectPtr<USkeletalMeshComponent> CachedCharacterMeshComp;
47
48 UPROPERTY(Transient)
49 TWeakObjectPtr<UStaticMeshComponent> CachedProjectileMeshComp;
50};
Definition GA_EnemyAttack.h:15
Definition GA_EnemyRangedAttack.h:17
Definition ExtendedDatas.h:145