Payback 0.0.1
CK Graduation Project
로딩중...
검색중...
일치하는것 없음
ProjectileLauncherComponent.h
이 파일의 문서화 페이지로 가기
1// Fill out your copyright notice in the Description page of Project Settings.
2
3#pragma once
4
5#include "CoreMinimal.h"
6#include "Components/ActorComponent.h"
8#include "ProjectileLauncherComponent.generated.h"
9
10
12
13
14UCLASS(ClassGroup=(Custom), meta=(BlueprintSpawnableComponent))
15class CK_UE_API UProjectileLauncherComponent : public UActorComponent
16{
17 GENERATED_BODY()
18
19public:
20 UProjectileLauncherComponent();
21
22public:
23 virtual AProjectileBase* Launch(const TSubclassOf<AProjectileBase> ProjectileClass, const FVector From, const FVector Direction);
24 virtual AProjectileBase* LaunchTo(const TSubclassOf<AProjectileBase> ProjectileClass, const FVector From, const FVector To);
25
26protected:
27 virtual void BeginPlay() override;
28 virtual AProjectileBase* SpawnProjectile(const TSubclassOf<AProjectileBase> ProjectileClass, const FVector From, const FVector Direction);
29
30public:
31 FProjectileLaunchedDelegate OnProjectileLaunchedDelegate;
32 FProjectileDeactivatedDelegate OnProjectileDeactivatedDelegate;
33
34private:
35 UProjectileSpawnSystemComponent* ResolveProjectileSpawnSystem();
36
37 UFUNCTION()
38 void ForwardDeactivated(AProjectileBase* Projectile, EProjectileDeactivationOption Option);
39
40private:
41 UPROPERTY(Transient)
42 TWeakObjectPtr<UProjectileSpawnSystemComponent> CachedProjectileSpawnSystem;
43};
EProjectileDeactivationOption
Definition ProjectileBase.h:40
Definition ProjectileBase.h:81
Definition ProjectileSpawnSystemComponent.h:28