lyra_game_ue/Source/LyraGame/Teams/LyraTeamAgentInterface.cpp
Goran Lazarevski 3bcab085f8 Initial commit
2025-03-20 11:06:26 +01:00

29 lines
978 B
C++

// Copyright Epic Games, Inc. All Rights Reserved.
#include "Teams/LyraTeamAgentInterface.h"
#include "LyraLogChannels.h"
#include "UObject/ScriptInterface.h"
#include UE_INLINE_GENERATED_CPP_BY_NAME(LyraTeamAgentInterface)
ULyraTeamAgentInterface::ULyraTeamAgentInterface(const FObjectInitializer& ObjectInitializer)
: Super(ObjectInitializer)
{
}
void ILyraTeamAgentInterface::ConditionalBroadcastTeamChanged(TScriptInterface<ILyraTeamAgentInterface> This, FGenericTeamId OldTeamID, FGenericTeamId NewTeamID)
{
if (OldTeamID != NewTeamID)
{
const int32 OldTeamIndex = GenericTeamIdToInteger(OldTeamID);
const int32 NewTeamIndex = GenericTeamIdToInteger(NewTeamID);
UObject* ThisObj = This.GetObject();
UE_LOG(LogLyraTeams, Verbose, TEXT("[%s] %s assigned team %d"), *GetClientServerContextString(ThisObj), *GetPathNameSafe(ThisObj), NewTeamIndex);
This.GetInterface()->GetTeamChangedDelegateChecked().Broadcast(ThisObj, OldTeamIndex, NewTeamIndex);
}
}