Modified InitPursuit to get Rankings ONLY FROM DATAASSET
This commit is contained in:
@ -28,12 +28,14 @@ void UDTFluxPursuitManager::InitPursuit(const TArray<int> InContestIds, const in
|
|||||||
FDTFluxContest Contest;
|
FDTFluxContest Contest;
|
||||||
if (CoreSubsystem->GetContestForId(ContestId, Contest))
|
if (CoreSubsystem->GetContestForId(ContestId, Contest))
|
||||||
{
|
{
|
||||||
BindRankings();
|
// BindRankings();
|
||||||
FDTFluxStageKey StageKey = FDTFluxStageKey(ContestId, Contest.GetLastStageId());
|
FDTFluxStageKey StageKey = FDTFluxStageKey(ContestId, Contest.GetLastStageId());
|
||||||
FDTFluxStageRankings TempStageRankings;
|
FDTFluxStageRankings TempStageRankings;
|
||||||
//Obtenir les ranking Frais.
|
//Obtenir les ranking Frais.
|
||||||
CoreSubsystem->GetStageRankingsWithKey(StageKey, TempStageRankings, false);
|
CoreSubsystem->GetStageRankingsWithKey(StageKey, TempStageRankings, true);
|
||||||
PendingStageRanking.Add(StageKey, false);
|
AllRankings.Add(TempStageRankings);
|
||||||
|
LaunchPursuitSequence();
|
||||||
|
// CoreSubsystem->GetStageRankings()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -46,25 +48,6 @@ void UDTFluxPursuitManager::SetPursuitInfoIsMassStart(FDTFluxPursuitGroup& NextF
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void UDTFluxPursuitManager::DebugFocusNext(const TArray<FDTFluxPursuitInfo>& OutPursuitFocusNext)
|
|
||||||
{
|
|
||||||
FString FocusBibs;
|
|
||||||
for (const auto& Pursuit : OutPursuitFocusNext)
|
|
||||||
{
|
|
||||||
FocusBibs += FString::Printf(TEXT("%d "), Pursuit.Bib);
|
|
||||||
}
|
|
||||||
UE_LOG(logDTFluxCoreSubsystem, Warning, TEXT("Focus Bibs: %s"), *FocusBibs);
|
|
||||||
}
|
|
||||||
|
|
||||||
void UDTFluxPursuitManager::DebugOutPoursuitNext(const TArray<FDTFluxPursuitInfo>& OutPursuitNext)
|
|
||||||
{
|
|
||||||
FString NextBibs;
|
|
||||||
for (int32 i = 0; i < OutPursuitNext.Num(); i++)
|
|
||||||
{
|
|
||||||
NextBibs += FString::Printf(TEXT("%d "), OutPursuitNext[i].Bib);
|
|
||||||
}
|
|
||||||
UE_LOG(logDTFluxCoreSubsystem, Warning, TEXT("Next Bibs: %s"), *NextBibs);
|
|
||||||
}
|
|
||||||
|
|
||||||
void UDTFluxPursuitManager::GetPursuit(TArray<FDTFluxPursuitInfo>& OutPursuitFocusNext,
|
void UDTFluxPursuitManager::GetPursuit(TArray<FDTFluxPursuitInfo>& OutPursuitFocusNext,
|
||||||
TArray<FDTFluxPursuitInfo>& OutPursuitNext, bool& BIsFocusTruncate,
|
TArray<FDTFluxPursuitInfo>& OutPursuitNext, bool& BIsFocusTruncate,
|
||||||
@ -73,9 +56,9 @@ void UDTFluxPursuitManager::GetPursuit(TArray<FDTFluxPursuitInfo>& OutPursuitFoc
|
|||||||
FDateTime MetricsStartFunction = FDateTime::UtcNow();
|
FDateTime MetricsStartFunction = FDateTime::UtcNow();
|
||||||
FDateTime CurrentTime = FDateTime::Now();
|
FDateTime CurrentTime = FDateTime::Now();
|
||||||
|
|
||||||
// UE_LOG(logDTFluxCoreSubsystem, Warning, TEXT("=== GetPursuit CALLED ==="));
|
UE_LOG(logDTFluxCoreSubsystem, Warning, TEXT("=== GetPursuit CALLED ==="));
|
||||||
// UE_LOG(logDTFluxCoreSubsystem, Warning, TEXT("MaxSimultaneousPursuit: %d"), MaxSimultaneousPursuit);
|
UE_LOG(logDTFluxCoreSubsystem, Warning, TEXT("MaxSimultaneousPursuit: %d"), MaxSimultaneousPursuit);
|
||||||
// UE_LOG(logDTFluxCoreSubsystem, Warning, TEXT("Available groups: %d"), GroupedPursuit.Num());
|
UE_LOG(logDTFluxCoreSubsystem, Warning, TEXT("Available groups: %d"), GroupedPursuit.Num());
|
||||||
|
|
||||||
// BAd Parameter
|
// BAd Parameter
|
||||||
if (MaxSimultaneousPursuit <= 0)
|
if (MaxSimultaneousPursuit <= 0)
|
||||||
@ -111,19 +94,16 @@ void UDTFluxPursuitManager::GetPursuit(TArray<FDTFluxPursuitInfo>& OutPursuitFoc
|
|||||||
GroupedPursuit.RemoveAt(i);
|
GroupedPursuit.RemoveAt(i);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
OutPursuitFocusNext.Reset();
|
OutPursuitFocusNext.Reset();
|
||||||
OutPursuitNext.Reset();
|
OutPursuitNext.Reset();
|
||||||
|
|
||||||
// === VÉRIFICATION CRITIQUE : S'assurer qu'il reste des groupes après suppression ===
|
|
||||||
if (GroupedPursuit.IsEmpty())
|
if (GroupedPursuit.IsEmpty())
|
||||||
{
|
{
|
||||||
UE_LOG(logDTFluxCoreSubsystem, Warning, TEXT("All groups were expired and removed - no groups available"));
|
UE_LOG(logDTFluxCoreSubsystem, Warning, TEXT("All groups were expired and removed - no groups available"));
|
||||||
OutPursuitFocusNext.Reset();
|
OutPursuitFocusNext.Reset();
|
||||||
OutPursuitNext.Reset();
|
OutPursuitNext.Reset();
|
||||||
BIsFocusTruncate = false;
|
BIsFocusTruncate = false;
|
||||||
bIsSequenceDone = true; // Marquer la séquence comme terminée
|
bIsSequenceDone = true;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -180,7 +160,6 @@ void UDTFluxPursuitManager::GetPursuit(TArray<FDTFluxPursuitInfo>& OutPursuitFoc
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// === LOGS DE RÉSUMÉ ===
|
|
||||||
UE_LOG(logDTFluxCoreSubsystem, Warning, TEXT("=== PURSUIT RESULTS ==="));
|
UE_LOG(logDTFluxCoreSubsystem, Warning, TEXT("=== PURSUIT RESULTS ==="));
|
||||||
UE_LOG(logDTFluxCoreSubsystem, Warning, TEXT("Focus: %d participants"), OutPursuitFocusNext.Num());
|
UE_LOG(logDTFluxCoreSubsystem, Warning, TEXT("Focus: %d participants"), OutPursuitFocusNext.Num());
|
||||||
UE_LOG(logDTFluxCoreSubsystem, Warning, TEXT("Next: %d participants"), OutPursuitNext.Num());
|
UE_LOG(logDTFluxCoreSubsystem, Warning, TEXT("Next: %d participants"), OutPursuitNext.Num());
|
||||||
@ -322,7 +301,6 @@ bool UDTFluxPursuitManager::LaunchPursuitSequence()
|
|||||||
{
|
{
|
||||||
if (Pair.Value.StartTimeGlobal != FDateTime::MinValue() && Pair.Value.StartTimeGlobal != FDateTime::MaxValue())
|
if (Pair.Value.StartTimeGlobal != FDateTime::MinValue() && Pair.Value.StartTimeGlobal != FDateTime::MaxValue())
|
||||||
{
|
{
|
||||||
// récuperation de la ref de la valeur actuel de la fréquence dans la TMap Freq
|
|
||||||
int& CurrentFreq = StartTimeFrequency.FindOrAdd(Pair.Value.StartTimeGlobal, 0);
|
int& CurrentFreq = StartTimeFrequency.FindOrAdd(Pair.Value.StartTimeGlobal, 0);
|
||||||
CurrentFreq = Pair.Value.PursuitGroup.Num();
|
CurrentFreq = Pair.Value.PursuitGroup.Num();
|
||||||
if (CurrentFreq > MaxFrequency)
|
if (CurrentFreq > MaxFrequency)
|
||||||
@ -348,3 +326,25 @@ bool UDTFluxPursuitManager::LaunchPursuitSequence()
|
|||||||
OnPursuitSequenceReady.Broadcast(PursuitData);
|
OnPursuitSequenceReady.Broadcast(PursuitData);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
void UDTFluxPursuitManager::DebugFocusNext(const TArray<FDTFluxPursuitInfo>& OutPursuitFocusNext)
|
||||||
|
{
|
||||||
|
FString FocusBibs;
|
||||||
|
for (const auto& Pursuit : OutPursuitFocusNext)
|
||||||
|
{
|
||||||
|
FocusBibs += FString::Printf(TEXT("%d "), Pursuit.Bib);
|
||||||
|
}
|
||||||
|
UE_LOG(logDTFluxCoreSubsystem, Warning, TEXT("Focus Bibs: %s"), *FocusBibs);
|
||||||
|
}
|
||||||
|
|
||||||
|
void UDTFluxPursuitManager::DebugOutPoursuitNext(const TArray<FDTFluxPursuitInfo>& OutPursuitNext)
|
||||||
|
{
|
||||||
|
FString NextBibs;
|
||||||
|
for (int32 i = 0; i < OutPursuitNext.Num(); i++)
|
||||||
|
{
|
||||||
|
NextBibs += FString::Printf(TEXT("%d "), OutPursuitNext[i].Bib);
|
||||||
|
}
|
||||||
|
UE_LOG(logDTFluxCoreSubsystem, Warning, TEXT("Next Bibs: %s"), *NextBibs);
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user