5#include "CoreMinimal.h"
8#include "CommandCenter.generated.h"
27 virtual void DefensesDepleted();
28 virtual void DestroyCommandCenter();
30 virtual float GetObjectiveHealth()
const override;
31 virtual float GetObjectiveMaxHealth()
const override;
37 UFUNCTION(BlueprintPure, Category =
"Command Center")
38 bool HasDefensesUp() const;
41 virtual
void OnPartDamageTaken(
ADestroyableObjective* Objective, const
float Damage, struct FDamageEvent const& DamageEvent, class AController* EventInstigator, class AActor* DamageCauser, class APlayerState* InstigatorPlayerState);
43 virtual
void OnPartDestroyed(
ADestroyableObjective* Objective, const
float Damage, struct FDamageEvent const& DamageEvent, class AController* EventInstigator, class AActor* DamageCauser, class APlayerState* InstigatorPlayerState);
47 UPROPERTY(BlueprintAssignable, Category = "Command Center Events")
48 FCommandCenterEventSignature OnCommandCenterDestroyed;
49 UPROPERTY(BlueprintAssignable, Category = "Command Center Events")
50 FCommandCenterEventSignature OnCommandCenterUnderAttack;
51 UPROPERTY(BlueprintAssignable, Category = "Command Center Events")
52 FCommandCenterHealthEventSignature OnCommandCenterHealthChanged;
53 UPROPERTY(BlueprintAssignable, Category = "Command Center Events")
54 FCommandCenterEventSignature OnDefensesDepleted;
55 UPROPERTY(BlueprintAssignable, Category = "Command Center Events")
56 FCommandCenterEventSignature OnCommandCenterProperlyInitialized;
61 UFUNCTION(BlueprintImplementableEvent)
62 void OnCommandCenterInitialized();
65 UPROPERTY(EditInstanceOnly, Category = "Command Center")
68 UPROPERTY(EditInstanceOnly, Category = "Command Center")
72 UPROPERTY(EditInstanceOnly, Category = "Command Center", meta = (AllowPrivateAccess = true))
73 int32 SortOrder = INDEX_NONE;
76 virtual
void OnHealthChanged(
float Delta);
80 uint8 PartsAlive = UINT8_MAX;
82 FTimerHandle InitializationTimerHandle;
83 bool bIsProperlyInitialized = false;
DECLARE_DYNAMIC_MULTICAST_DELEGATE_OneParam(FCommandCenterEventSignature, class ACommandCenter *, CommandCenter)
DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams(FCommandCenterHealthEventSignature, class ACommandCenter *, CommandCenter, float, Delta)
Definition: CommandCenter.h:20
virtual bool GetIsObjectiveDead() const
Definition: CommandCenter.h:32
virtual int32 GetObjectiveSortOrder() const
Definition: CommandCenter.h:34
virtual int32 GetObjectiveTeam() const
Definition: CommandCenter.h:33
virtual bool GetIsObjectiveProperlyInitialized() const
Definition: CommandCenter.h:35
Definition: DeployableAutonomousTurret.h:14
Definition: DestroyableObjective.h:23
virtual void CheckForInitialization()
Definition: DestroyableObjective.cpp:448
virtual void BeginPlay() override
Definition: DestroyableObjective.cpp:43
virtual int32 GetTeam() const override
Definition: DestroyableObjective.cpp:347
Definition: TeamDeathmatchSpawnPoint.h:19
Definition: AllOutWarfareObjectiveInterface.h:19