32 virtual bool CanActivateAbility(
const FGameplayAbilitySpecHandle Handle,
const FGameplayAbilityActorInfo* ActorInfo,
const FGameplayTagContainer* SourceTags =
nullptr,
const FGameplayTagContainer* TargetTags =
nullptr, FGameplayTagContainer* OptionalRelevantTags =
nullptr)
const override;
33 virtual void ActivateAbility(
const FGameplayAbilitySpecHandle Handle,
const FGameplayAbilityActorInfo* ActorInfo,
const FGameplayAbilityActivationInfo ActivationInfo,
const FGameplayEventData* TriggerEventData)
override;
34 virtual void EndAbility(
const FGameplayAbilitySpecHandle Handle,
const FGameplayAbilityActorInfo* ActorInfo,
const FGameplayAbilityActivationInfo ActivationInfo,
bool bReplicateEndAbility,
bool bWasCancelled)
override;
37 virtual void ApplyCombatData()
override;
47 void LaunchSpawnedProjectile();
52 bool GetWeaponProjectileClassType(FGameplayTag& OutWeaponTag,
const TSubclassOf<AWeaponProjectile>*& OutFoundClass)
const;
53 bool ChangeTargetingAndActivateStrike(FGameplayAbilitySpecHandle Handle,
const FGameplayAbilityActorInfo* ActorInfo, FGameplayAbilityActivationInfo ActivationInfo, FGameplayTag RequestedWeaponTag);
54 void SubscribeLauncher(UProjectileLauncherComponent* Launcher);
55 void UnsubscribeLauncher();
59 float MaxImpactDistance = 0.0f;
62 float ImpactObstructionOffset = 0.0f;
65 float SpawnHeightAboveImpact = 0.0f;
68 float SpawnLateralOffset = 0.0f;
71 float SpawnForwardOffset = 0.0f;
74 float WeaponLaunchDelay = 0.0f;
84 TWeakObjectPtr<UProjectileLauncherComponent> CachedLauncher;
93 TWeakObjectPtr<UProjectileLauncherComponent> PendingLauncher;
96 bool bLauncherSubscribed = false;
98 FVector PendingLaunchFrom = FVector::ZeroVector;
99 FVector PendingLaunchDirection = FVector::ForwardVector;
Definition MainPlayerCharacter.h:39