Replace raw pointers with TObjectPtr<>
This commit is contained in:
parent
0a486535f1
commit
f72780bb00
@ -35,13 +35,15 @@ public:
|
|||||||
|
|
||||||
private:
|
private:
|
||||||
UPROPERTY(EditDefaultsOnly, Meta = (AllowPrivateAccess = "true"))
|
UPROPERTY(EditDefaultsOnly, Meta = (AllowPrivateAccess = "true"))
|
||||||
UBehaviorTree* BehaviorTree = nullptr;
|
TObjectPtr<UBehaviorTree> BehaviorTree = nullptr;
|
||||||
|
|
||||||
UObjectPoolComponent* ObjectPoolComponent = nullptr;
|
UPROPERTY()
|
||||||
|
TObjectPtr<UObjectPoolComponent> ObjectPoolComponent = nullptr;
|
||||||
|
|
||||||
UPickupDataAsset* PickupTemplate = nullptr;
|
UPROPERTY()
|
||||||
|
TObjectPtr<UPickupDataAsset> PickupTemplate = nullptr;
|
||||||
|
|
||||||
TArray<AActor*> Player;
|
TArray<TObjectPtr<AActor>> Player;
|
||||||
|
|
||||||
FTimerHandle DamageTimerHandle;
|
FTimerHandle DamageTimerHandle;
|
||||||
|
|
||||||
|
@ -20,13 +20,13 @@ class VAMPIRES_API UEnemyDataAsset : public UDataAsset
|
|||||||
|
|
||||||
public:
|
public:
|
||||||
UPROPERTY(BlueprintReadWrite, EditAnywhere)
|
UPROPERTY(BlueprintReadWrite, EditAnywhere)
|
||||||
UStaticMesh* StaticMesh;
|
TObjectPtr<UStaticMesh> StaticMesh;
|
||||||
|
|
||||||
UPROPERTY(EditDefaultsOnly, Meta = (AllowPrivateAccess = "true"))
|
UPROPERTY(EditDefaultsOnly, Meta = (AllowPrivateAccess = "true"))
|
||||||
UBehaviorTree* BehaviorTree = nullptr;
|
TObjectPtr<UBehaviorTree> BehaviorTree = nullptr;
|
||||||
|
|
||||||
UPROPERTY(EditDefaultsOnly, Meta = (AllowPrivateAccess = "true"))
|
UPROPERTY(EditDefaultsOnly, Meta = (AllowPrivateAccess = "true"))
|
||||||
UPickupDataAsset* PickupDataAsset = nullptr;
|
TObjectPtr<UPickupDataAsset> PickupDataAsset = nullptr;
|
||||||
|
|
||||||
UPROPERTY(EditDefaultsOnly, Meta = (AllowPrivateAccess = "true"))
|
UPROPERTY(EditDefaultsOnly, Meta = (AllowPrivateAccess = "true"))
|
||||||
TObjectPtr<USoundBase> OnDamagedSoundBase = nullptr;
|
TObjectPtr<USoundBase> OnDamagedSoundBase = nullptr;
|
||||||
@ -35,8 +35,8 @@ public:
|
|||||||
TObjectPtr<USoundBase> OnDeathSoundBase = nullptr;
|
TObjectPtr<USoundBase> OnDeathSoundBase = nullptr;
|
||||||
|
|
||||||
UPROPERTY(EditDefaultsOnly, Meta = (AllowPrivateAccess = "true"))
|
UPROPERTY(EditDefaultsOnly, Meta = (AllowPrivateAccess = "true"))
|
||||||
UNiagaraSystem* OnDamagedNiagaraSystem;
|
TObjectPtr<UNiagaraSystem> OnDamagedNiagaraSystem;
|
||||||
|
|
||||||
UPROPERTY(EditDefaultsOnly, Meta = (AllowPrivateAccess = "true"))
|
UPROPERTY(EditDefaultsOnly, Meta = (AllowPrivateAccess = "true"))
|
||||||
UNiagaraSystem* OnDeathNiagaraSystem;
|
TObjectPtr<UNiagaraSystem> OnDeathNiagaraSystem;
|
||||||
};
|
};
|
||||||
|
@ -11,7 +11,7 @@ class VAMPIRES_API AObjectPoolManager : public AActor
|
|||||||
{
|
{
|
||||||
GENERATED_BODY()
|
GENERATED_BODY()
|
||||||
|
|
||||||
TArray<AActor*> ObjectPool = TArray<AActor*>();
|
TArray<TObjectPtr<AActor>> ObjectPool = TArray<TObjectPtr<AActor>>();
|
||||||
|
|
||||||
public:
|
public:
|
||||||
void InitializeObjectPool(TSubclassOf<AActor> Object, int InitialObjectPoolSize = 400);
|
void InitializeObjectPool(TSubclassOf<AActor> Object, int InitialObjectPoolSize = 400);
|
||||||
|
@ -22,22 +22,22 @@ public:
|
|||||||
int PickupValue = 1;
|
int PickupValue = 1;
|
||||||
|
|
||||||
UPROPERTY(EditDefaultsOnly, BlueprintReadWrite)
|
UPROPERTY(EditDefaultsOnly, BlueprintReadWrite)
|
||||||
USphereComponent* InnerSphereComponent = nullptr;
|
TObjectPtr<USphereComponent> InnerSphereComponent = nullptr;
|
||||||
|
|
||||||
UPROPERTY(EditDefaultsOnly, BlueprintReadWrite)
|
UPROPERTY(EditDefaultsOnly, BlueprintReadWrite)
|
||||||
USphereComponent* OuterSphereComponent = nullptr;
|
TObjectPtr<USphereComponent> OuterSphereComponent = nullptr;
|
||||||
|
|
||||||
UPROPERTY(EditAnywhere)
|
UPROPERTY(EditAnywhere)
|
||||||
UStaticMeshComponent* StaticMeshComponent = nullptr;
|
TObjectPtr<UStaticMeshComponent> StaticMeshComponent = nullptr;
|
||||||
|
|
||||||
UPROPERTY(EditDefaultsOnly)
|
UPROPERTY(EditDefaultsOnly)
|
||||||
USoundBase* PickupSoundBase = nullptr;
|
TObjectPtr<USoundBase> PickupSoundBase = nullptr;
|
||||||
|
|
||||||
UPROPERTY(EditDefaultsOnly, BlueprintReadOnly, Category = "Timeline")
|
UPROPERTY(EditDefaultsOnly, BlueprintReadOnly, Category = "Timeline")
|
||||||
TObjectPtr<UTimelineComponent> TimelineComponent = nullptr;
|
TObjectPtr<UTimelineComponent> TimelineComponent = nullptr;
|
||||||
|
|
||||||
UPROPERTY(EditDefaultsOnly, BlueprintReadOnly, Category = "Timeline")
|
UPROPERTY(EditDefaultsOnly, BlueprintReadOnly, Category = "Timeline")
|
||||||
UCurveFloat* CurveFloat;
|
TObjectPtr<UCurveFloat> CurveFloat;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
FOnTimelineFloat onTimelineCallback;
|
FOnTimelineFloat onTimelineCallback;
|
||||||
|
@ -26,13 +26,13 @@ class VAMPIRES_API APlayerCharacter : public AVampireCharacter
|
|||||||
|
|
||||||
public:
|
public:
|
||||||
UPROPERTY(EditAnywhere, BlueprintReadWrite)
|
UPROPERTY(EditAnywhere, BlueprintReadWrite)
|
||||||
UEXPComponent* EXPComponent;
|
TObjectPtr<UEXPComponent> EXPComponent;
|
||||||
|
|
||||||
UPROPERTY(EditAnywhere, BlueprintReadWrite)
|
UPROPERTY(EditAnywhere, BlueprintReadWrite)
|
||||||
UGoldComponent* GoldComponent;
|
TObjectPtr<UGoldComponent> GoldComponent;
|
||||||
|
|
||||||
UPROPERTY(EditAnywhere)
|
UPROPERTY(EditAnywhere)
|
||||||
UWidgetComponent* HealthBarWidgetComponent;
|
TObjectPtr<UWidgetComponent> HealthBarWidgetComponent;
|
||||||
|
|
||||||
UPROPERTY(EditDefaultsOnly, BlueprintReadOnly)
|
UPROPERTY(EditDefaultsOnly, BlueprintReadOnly)
|
||||||
TObjectPtr<UTimelineComponent> CameraShakeTimelineComponent = nullptr;
|
TObjectPtr<UTimelineComponent> CameraShakeTimelineComponent = nullptr;
|
||||||
|
@ -18,10 +18,10 @@ class VAMPIRES_API AProjectile : public AActor, public IProjectilable
|
|||||||
|
|
||||||
public:
|
public:
|
||||||
UPROPERTY(EditDefaultsOnly, BlueprintReadWrite)
|
UPROPERTY(EditDefaultsOnly, BlueprintReadWrite)
|
||||||
USphereComponent* SphereComponent = nullptr;
|
TObjectPtr<USphereComponent> SphereComponent = nullptr;
|
||||||
|
|
||||||
UPROPERTY(EditDefaultsOnly, BlueprintReadWrite)
|
UPROPERTY(EditDefaultsOnly, BlueprintReadWrite)
|
||||||
UProjectileMovementComponent* ProjectileMovement = nullptr;
|
TObjectPtr<UProjectileMovementComponent> ProjectileMovement = nullptr;
|
||||||
|
|
||||||
FVector TargetDirection = FVector::ZeroVector;
|
FVector TargetDirection = FVector::ZeroVector;
|
||||||
|
|
||||||
@ -29,7 +29,7 @@ public:
|
|||||||
float ProjectileSpeed = 500.0f;
|
float ProjectileSpeed = 500.0f;
|
||||||
|
|
||||||
UPROPERTY(EditAnywhere, BlueprintReadWrite)
|
UPROPERTY(EditAnywhere, BlueprintReadWrite)
|
||||||
UStaticMeshComponent* StaticMeshComponent = nullptr;
|
TObjectPtr<UStaticMeshComponent> StaticMeshComponent = nullptr;
|
||||||
|
|
||||||
UPROPERTY(EditAnywhere, BlueprintReadWrite)
|
UPROPERTY(EditAnywhere, BlueprintReadWrite)
|
||||||
int RemainingDamagableEnemies = 1;
|
int RemainingDamagableEnemies = 1;
|
||||||
|
@ -15,7 +15,7 @@
|
|||||||
AVampireAIController::AVampireAIController(const FObjectInitializer& object_initializer) : Super(
|
AVampireAIController::AVampireAIController(const FObjectInitializer& object_initializer) : Super(
|
||||||
object_initializer.SetDefaultSubobjectClass<UCrowdFollowingComponent>(TEXT("Path Following Component")))
|
object_initializer.SetDefaultSubobjectClass<UCrowdFollowingComponent>(TEXT("Path Following Component")))
|
||||||
{
|
{
|
||||||
Blackboard = CreateDefaultSubobject<UBlackboardComponent>(TEXT("Blackboard"));
|
DefaultBlackboard = CreateDefaultSubobject<UBlackboardComponent>(TEXT("Blackboard"));
|
||||||
BehaviorTree = CreateDefaultSubobject<UBehaviorTreeComponent>(TEXT("Behavior Tree"));
|
BehaviorTree = CreateDefaultSubobject<UBehaviorTreeComponent>(TEXT("Behavior Tree"));
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -38,7 +38,7 @@ void AVampireAIController::Tick(float DeltaTime)
|
|||||||
|
|
||||||
if (PlayerCharacter)
|
if (PlayerCharacter)
|
||||||
{
|
{
|
||||||
Blackboard->SetValueAsVector("PlayerLocation", PlayerCharacter->GetActorLocation());
|
DefaultBlackboard->SetValueAsVector("PlayerLocation", PlayerCharacter->GetActorLocation());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -56,13 +56,13 @@ void AVampireAIController::OnPossess(APawn* InPawn)
|
|||||||
|
|
||||||
if (UBehaviorTree* bt = EnemyCharacter->GetBehaviorTree())
|
if (UBehaviorTree* bt = EnemyCharacter->GetBehaviorTree())
|
||||||
{
|
{
|
||||||
Blackboard->InitializeBlackboard(*bt->BlackboardAsset);
|
DefaultBlackboard->InitializeBlackboard(*bt->BlackboardAsset);
|
||||||
BehaviorTree->StartTree(*bt);
|
BehaviorTree->StartTree(*bt);
|
||||||
Blackboard->SetValueAsObject("SelfActor", EnemyCharacter);
|
DefaultBlackboard->SetValueAsObject("SelfActor", EnemyCharacter);
|
||||||
|
|
||||||
if (PlayerCharacter)
|
if (PlayerCharacter)
|
||||||
{
|
{
|
||||||
Blackboard->SetValueAsObject("Player", PlayerCharacter);
|
DefaultBlackboard->SetValueAsObject("Player", PlayerCharacter);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -18,13 +18,17 @@ class VAMPIRES_API AVampireAIController : public AAIController
|
|||||||
{
|
{
|
||||||
GENERATED_BODY()
|
GENERATED_BODY()
|
||||||
|
|
||||||
UBlackboardComponent* Blackboard;
|
UPROPERTY()
|
||||||
|
TObjectPtr<UBlackboardComponent> DefaultBlackboard;
|
||||||
|
|
||||||
UBehaviorTreeComponent* BehaviorTree;
|
UPROPERTY()
|
||||||
|
TObjectPtr<UBehaviorTreeComponent> BehaviorTree;
|
||||||
|
|
||||||
ACharacter* PlayerCharacter;
|
UPROPERTY()
|
||||||
|
TObjectPtr<ACharacter> PlayerCharacter;
|
||||||
|
|
||||||
AEnemyCharacter* EnemyCharacter;
|
UPROPERTY()
|
||||||
|
TObjectPtr<AEnemyCharacter> EnemyCharacter;
|
||||||
|
|
||||||
FTimerHandle PawnMoveToTimerHandle;
|
FTimerHandle PawnMoveToTimerHandle;
|
||||||
|
|
||||||
|
@ -21,7 +21,7 @@ class VAMPIRES_API AVampireCharacter : public ACharacter, public IInputable
|
|||||||
|
|
||||||
public:
|
public:
|
||||||
UPROPERTY(BlueprintReadWrite, EditAnywhere)
|
UPROPERTY(BlueprintReadWrite, EditAnywhere)
|
||||||
UStaticMeshComponent* StaticMeshComponent;
|
TObjectPtr<UStaticMeshComponent> StaticMeshComponent;
|
||||||
|
|
||||||
FVector2D PreviousMovementDirection = FVector2d(1.0f, 0.0f);
|
FVector2D PreviousMovementDirection = FVector2d(1.0f, 0.0f);
|
||||||
|
|
||||||
@ -30,25 +30,25 @@ public:
|
|||||||
|
|
||||||
protected:
|
protected:
|
||||||
UPROPERTY(VisibleAnywhere)
|
UPROPERTY(VisibleAnywhere)
|
||||||
UHealthComponent* HealthComponent;
|
TObjectPtr<UHealthComponent> HealthComponent;
|
||||||
|
|
||||||
UPROPERTY(EditAnywhere, BlueprintReadWrite)
|
UPROPERTY(EditAnywhere, BlueprintReadWrite)
|
||||||
TObjectPtr<UInputMappingContext> InputMappingContext;
|
TObjectPtr<UInputMappingContext> InputMappingContext;
|
||||||
|
|
||||||
UPROPERTY(EditAnywhere, BlueprintReadWrite)
|
UPROPERTY(EditAnywhere, BlueprintReadWrite)
|
||||||
UWeaponInventoryComponent* WeaponInventoryComponent;
|
TObjectPtr<UWeaponInventoryComponent> WeaponInventoryComponent;
|
||||||
|
|
||||||
UPROPERTY(EditAnywhere, BlueprintReadWrite)
|
UPROPERTY(EditAnywhere, BlueprintReadWrite)
|
||||||
USoundBase* OnDamagedSound;
|
TObjectPtr<USoundBase> OnDamagedSound;
|
||||||
|
|
||||||
UPROPERTY(EditAnywhere, BlueprintReadWrite)
|
UPROPERTY(EditAnywhere, BlueprintReadWrite)
|
||||||
USoundBase* OnDeathSound;
|
TObjectPtr<USoundBase> OnDeathSound;
|
||||||
|
|
||||||
UPROPERTY(EditAnywhere, BlueprintReadWrite)
|
UPROPERTY(EditAnywhere, BlueprintReadWrite)
|
||||||
UNiagaraSystem* OnDamagedNiagaraSystem;
|
TObjectPtr<UNiagaraSystem> OnDamagedNiagaraSystem;
|
||||||
|
|
||||||
UPROPERTY(EditAnywhere, BlueprintReadWrite)
|
UPROPERTY(EditAnywhere, BlueprintReadWrite)
|
||||||
UNiagaraSystem* OnDeathNiagaraSystem;
|
TObjectPtr<UNiagaraSystem> OnDeathNiagaraSystem;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
// Sets default values for this character's properties
|
// Sets default values for this character's properties
|
||||||
|
@ -39,20 +39,26 @@ public:
|
|||||||
TArray<TObjectPtr<UEnemyDataAsset>> EnemyDataAssets;
|
TArray<TObjectPtr<UEnemyDataAsset>> EnemyDataAssets;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
UPROPERTY()
|
||||||
TObjectPtr<APlayerCharacter> PlayerCharacter;
|
TObjectPtr<APlayerCharacter> PlayerCharacter;
|
||||||
|
|
||||||
|
UPROPERTY()
|
||||||
TObjectPtr<AVampirePlayerController> PlayerController;
|
TObjectPtr<AVampirePlayerController> PlayerController;
|
||||||
|
|
||||||
FTimerHandle SpawnEnemyTimerDelegate;
|
FTimerHandle SpawnEnemyTimerDelegate;
|
||||||
|
|
||||||
int EnemyDeathCount = 0;
|
int EnemyDeathCount = 0;
|
||||||
|
|
||||||
|
UPROPERTY()
|
||||||
TObjectPtr<AObjectPoolManager> EnemyObjectPoolManager = nullptr;
|
TObjectPtr<AObjectPoolManager> EnemyObjectPoolManager = nullptr;
|
||||||
|
|
||||||
|
UPROPERTY()
|
||||||
TObjectPtr<AObjectPoolManager> ProjectileObjectPoolManager = nullptr;
|
TObjectPtr<AObjectPoolManager> ProjectileObjectPoolManager = nullptr;
|
||||||
|
|
||||||
|
UPROPERTY()
|
||||||
TObjectPtr<AObjectPoolManager> PickupObjectPoolManager = nullptr;
|
TObjectPtr<AObjectPoolManager> PickupObjectPoolManager = nullptr;
|
||||||
|
|
||||||
|
UPROPERTY()
|
||||||
TArray<TObjectPtr<UEnemyDataAsset>> SpawnableEnemyDataAssets;
|
TArray<TObjectPtr<UEnemyDataAsset>> SpawnableEnemyDataAssets;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
|
@ -33,17 +33,20 @@ public:
|
|||||||
|
|
||||||
// Inputs
|
// Inputs
|
||||||
UPROPERTY(EditDefaultsOnly, BlueprintReadWrite)
|
UPROPERTY(EditDefaultsOnly, BlueprintReadWrite)
|
||||||
UInputAction* MovementAction;
|
TObjectPtr<UInputAction> MovementAction;
|
||||||
|
|
||||||
UPROPERTY(EditDefaultsOnly, BlueprintReadWrite)
|
UPROPERTY(EditDefaultsOnly, BlueprintReadWrite)
|
||||||
UInputAction* PauseAction;
|
TObjectPtr<UInputAction> PauseAction;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
|
||||||
|
UPROPERTY()
|
||||||
TObjectPtr<UHUDWidget> currentPlayerHUD = nullptr;
|
TObjectPtr<UHUDWidget> currentPlayerHUD = nullptr;
|
||||||
|
|
||||||
|
UPROPERTY()
|
||||||
TObjectPtr<UPauseWidget> currentPauseUI = nullptr;
|
TObjectPtr<UPauseWidget> currentPauseUI = nullptr;
|
||||||
|
|
||||||
|
UPROPERTY()
|
||||||
TObjectPtr<ULevelUpWidget> currentLevelUpUI = nullptr;
|
TObjectPtr<ULevelUpWidget> currentLevelUpUI = nullptr;
|
||||||
|
|
||||||
FTimerHandle pawnLifeTimeHandle;
|
FTimerHandle pawnLifeTimeHandle;
|
||||||
|
@ -27,7 +27,7 @@ public:
|
|||||||
TObjectPtr<UTexture2D> Icon;
|
TObjectPtr<UTexture2D> Icon;
|
||||||
|
|
||||||
UPROPERTY(EditDefaultsOnly, Category = "Weapon Properties")
|
UPROPERTY(EditDefaultsOnly, Category = "Weapon Properties")
|
||||||
USoundBase* WeaponActivatedSoundBase = nullptr;
|
TObjectPtr<USoundBase> WeaponActivatedSoundBase = nullptr;
|
||||||
|
|
||||||
UPROPERTY(EditDefaultsOnly, Category = "Weapon Properties")
|
UPROPERTY(EditDefaultsOnly, Category = "Weapon Properties")
|
||||||
TObjectPtr<UPaperSprite> WeaponSprite = nullptr;
|
TObjectPtr<UPaperSprite> WeaponSprite = nullptr;
|
||||||
@ -51,9 +51,9 @@ public:
|
|||||||
|
|
||||||
protected:
|
protected:
|
||||||
UPROPERTY(EditDefaultsOnly, BlueprintReadWrite)
|
UPROPERTY(EditDefaultsOnly, BlueprintReadWrite)
|
||||||
UBoxComponent* BoxComponent = nullptr;
|
TObjectPtr<UBoxComponent> BoxComponent = nullptr;
|
||||||
|
|
||||||
TArray<AActor*> OverlappedEnemies = TArray<AActor*>();
|
TArray<TObjectPtr<AActor>> OverlappedEnemies = TArray<TObjectPtr<AActor>>();
|
||||||
|
|
||||||
private:
|
private:
|
||||||
FTimerHandle WeaponTimerHandle;
|
FTimerHandle WeaponTimerHandle;
|
||||||
|
@ -24,7 +24,7 @@ public:
|
|||||||
|
|
||||||
private:
|
private:
|
||||||
UPROPERTY()
|
UPROPERTY()
|
||||||
TArray<AWeapon*> inventory;
|
TArray<TObjectPtr<AWeapon>> inventory;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
// Sets default values for this component's properties
|
// Sets default values for this component's properties
|
||||||
|
@ -14,7 +14,8 @@ struct FOverlappedEnemy
|
|||||||
{
|
{
|
||||||
GENERATED_BODY()
|
GENERATED_BODY()
|
||||||
|
|
||||||
AEnemyCharacter* OverlappedEnemyCharacter;
|
UPROPERTY()
|
||||||
|
TObjectPtr<AEnemyCharacter> OverlappedEnemyCharacter;
|
||||||
|
|
||||||
FTimerHandle OverlappedTimerHandle;
|
FTimerHandle OverlappedTimerHandle;
|
||||||
};
|
};
|
||||||
@ -28,7 +29,7 @@ class VAMPIRES_API AGarlicWeapon : public AWeapon
|
|||||||
GENERATED_BODY()
|
GENERATED_BODY()
|
||||||
public:
|
public:
|
||||||
UPROPERTY(VisibleAnywhere, BlueprintReadOnly, meta = (AllowPrivateAccess = "true"))
|
UPROPERTY(VisibleAnywhere, BlueprintReadOnly, meta = (AllowPrivateAccess = "true"))
|
||||||
USphereComponent* SphereComponent;
|
TObjectPtr<USphereComponent> SphereComponent;
|
||||||
|
|
||||||
TArray<FOverlappedEnemy> GarlicOverlappedEnemies;
|
TArray<FOverlappedEnemy> GarlicOverlappedEnemies;
|
||||||
|
|
||||||
|
@ -18,7 +18,7 @@ class VAMPIRES_API APentagramWeapon : public AWeapon
|
|||||||
GENERATED_BODY()
|
GENERATED_BODY()
|
||||||
|
|
||||||
private:
|
private:
|
||||||
TArray<APickup*> OverlappedPickups = TArray<APickup*>();
|
TArray<TObjectPtr<APickup>> OverlappedPickups = TArray<TObjectPtr<APickup>>();
|
||||||
|
|
||||||
public:
|
public:
|
||||||
APentagramWeapon();
|
APentagramWeapon();
|
||||||
|
@ -15,10 +15,10 @@ class VAMPIRES_API ASwarmAgent : public AActor
|
|||||||
|
|
||||||
public:
|
public:
|
||||||
UPROPERTY(EditDefaultsOnly, BlueprintReadWrite)
|
UPROPERTY(EditDefaultsOnly, BlueprintReadWrite)
|
||||||
USphereComponent* SphereComponent = nullptr;
|
TObjectPtr<USphereComponent> SphereComponent = nullptr;
|
||||||
|
|
||||||
UPROPERTY(EditAnywhere, BlueprintReadWrite)
|
UPROPERTY(EditAnywhere, BlueprintReadWrite)
|
||||||
UStaticMeshComponent* StaticMeshComponent = nullptr;
|
TObjectPtr<UStaticMeshComponent> StaticMeshComponent = nullptr;
|
||||||
|
|
||||||
// Sets default values for this actor's properties
|
// Sets default values for this actor's properties
|
||||||
ASwarmAgent();
|
ASwarmAgent();
|
||||||
|
@ -33,7 +33,7 @@ public:
|
|||||||
private:
|
private:
|
||||||
FOnTimelineFloat onTimelineCallback;
|
FOnTimelineFloat onTimelineCallback;
|
||||||
|
|
||||||
TArray<ASwarmAgent*> SwarmActors;
|
TArray<TObjectPtr<ASwarmAgent>> SwarmActors;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
// Sets default values for this actor's properties
|
// Sets default values for this actor's properties
|
||||||
|
Loading…
x
Reference in New Issue
Block a user