blaster/Source/Blaster/GameState/BlasterGameState.cpp

35 lines
884 B
C++

// Fill out your copyright notice in the Description page of Project Settings.
#include "BlasterGameState.h"
#include "Blaster/PlayerState/BlasterPlayerState.h"
#include "Net/UnrealNetwork.h"
void ABlasterGameState::GetLifetimeReplicatedProps(TArray<FLifetimeProperty>& OutLifetimeProps) const
{
Super::GetLifetimeReplicatedProps(OutLifetimeProps);
DOREPLIFETIME(ABlasterGameState, TopScoringPlayers);
}
void ABlasterGameState::UpdateTopScore(ABlasterPlayerState* ScoringPlayer)
{
if (TopScoringPlayers.Num() == 0)
{
TopScoringPlayers.Add(ScoringPlayer);
TopScore = ScoringPlayer->GetScore();
}
else if (ScoringPlayer->GetScore() == TopScore)
{
TopScoringPlayers.AddUnique(ScoringPlayer);
}
else if (ScoringPlayer->GetScore() < TopScore)
{
TopScoringPlayers.Empty();
TopScoringPlayers.AddUnique(ScoringPlayer);
TopScore = ScoringPlayer->GetScore();
}
}