Payback 0.0.1
CK Graduation Project
로딩중...
검색중...
일치하는것 없음
WeaponProjectile.h
이 파일의 문서화 페이지로 가기
1// Fill out your copyright notice in the Description page of Project Settings.
2
3#pragma once
4
5#include "CoreMinimal.h"
7#include "GameplayTagContainer.h"
9#include "WeaponProjectile.generated.h"
10
13class UAbilitySystemComponent;
14
15
16UCLASS(Abstract, BlueprintType, Blueprintable)
18{
19 GENERATED_BODY()
20
21public:
23
24public:
25 virtual void OnCollided(const AActor* HitTarget, const FHitResult& Hit) override;
26 virtual UInteractionChannel* Interact(AActor* Caller) override;
27
28public:
29 UFUNCTION(BlueprintPure, Category="Projectile")
30 FORCEINLINE bool IsWeaponSpawned()
31 {
32 return GetSpawnedTargetableWeapon() != nullptr;
33 }
34
35 UFUNCTION(BlueprintPure, Category="Projectile")
36 FORCEINLINE ATargetableWeapon* GetSpawnedTargetableWeapon()
37 {
38 return SpawnedTargetableWeapon;
39 }
40
41protected:
42 virtual void OnSpawnFromPool_Implementation() override;
43 virtual void OnReturnToPool_Implementation() override;
44
45protected:
46 UPROPERTY(EditAnywhere, Category = "Projectile")
47 FVector TargetableWeaponSpawnRotation = FVector::ZeroVector;
48
49 UPROPERTY(EditAnywhere, Category = "Effect")
50 TSubclassOf<ATargetableWeapon> TargetableWeaponClassToSpawn;
51
52private:
53 UPROPERTY(Transient)
54 TObjectPtr<ATargetableWeapon> SpawnedTargetableWeapon;
55};
Definition DefaultProjectiles.h:55
Definition TargetableWeapon.h:20
Definition WeaponProjectile.h:18
Definition InteractableInterface.h:23
Definition InteractionChannel.h:21