5#include "CoreMinimal.h"
8#include "ProjectXGameStateAllOutWarfare.generated.h"
18 GENERATED_USTRUCT_BODY()
27 UPROPERTY(BlueprintReadOnly)
28 AActor* Objective =
nullptr;
29 UPROPERTY(BlueprintReadOnly)
37 GENERATED_USTRUCT_BODY()
40 UPROPERTY(BlueprintReadWrite, EditInstanceOnly, Category =
"Score Info")
42 UPROPERTY(BlueprintReadWrite, EditInstanceOnly, Category = "Score Info")
59 void SaveObjectives(TArray<IAllOutWarfareObjectiveInterface*>& InObjectives);
60 virtual void HandleMatchWarmupEnded()
override;
61 virtual int32 GetTeamWithHighestHealth();
63 UFUNCTION(BlueprintCallable)
64 bool GetShieldGeneratorsByTeam(uint8
Team, TArray<AShieldGenerator*>& FoundShieldGenerators)
const;
65 UFUNCTION(BlueprintPure)
67 UFUNCTION(BlueprintPure)
68 bool GetObjectivesForTeam(uint8
Team, TArray<AActor*>& FoundObjectives)
const;
69 UFUNCTION(BlueprintPure)
70 TArray<FTeamObjective> GetObjectives()
const;
71 UFUNCTION(BlueprintPure)
72 const TArray<
FTeamPercentage>& GetTeamPercentages()
const {
return TeamPercentages; }
74 UPROPERTY(BlueprintAssignable)
75 FTeamPercentagesSignature OnTeamsPercentageChanged;
76 UPROPERTY(BlueprintAssignable)
77 FObjectivesChangedSignature OnObjectivesChanged;
81 virtual
void OnRep_Objectives();
83 virtual
void OnRep_TeamPercentages();
88 virtual
void OnShieldHealthChanged(
AShieldGenerator* ShieldUnderAttack,
float Delta);
90 virtual
void OnCommandCenterUnderAttack(
ACommandCenter* CommandCenterUnderAttack);
92 virtual
void OnCommandCenterHealthChanged(
ACommandCenter* CommandCenterUnderAttack,
float Delta);
97 UPROPERTY(ReplicatedUsing = OnRep_Objectives)
99 UPROPERTY(ReplicatedUsing = OnRep_TeamPercentages)
102 FString MatchStartAOW = "VO_MatchStart_AOW";
104 TMap<uint8,
float> TeamMaxHealthConfig = TMap<uint8,
float>();
DECLARE_DYNAMIC_MULTICAST_DELEGATE_OneParam(FTeamPercentagesSignature, const TArray< FTeamPercentage > &, TeamPercentages)
Definition: CommandCenter.h:20
Definition: ProjectXGameStateAllOutWarfare.h:55
Definition: ProjectXGameState.h:158
Definition: ShieldGenerator.h:30
Definition: AllOutWarfareObjectiveInterface.h:19
Definition: ProjectXGameStateAllOutWarfare.h:17
FTeamObjective(uint8 NewTeam)
Definition: ProjectXGameStateAllOutWarfare.h:21
Definition: ProjectXGameStateAllOutWarfare.h:36