The following compiles
// MyClass.h
public:
UFUNCTION(BlueprintCallable, Client, Reliable)
void Client_UpdateKillFeed(bool bKillerTeam, bool bVictimTeam);
// MyClass.cpp
void MyClass::Client_UpdateKillFeed_Implementation(bool bKillerTeam, bool bVictimTeam)
{
}
The following does not
// MyClass.h
public:
UFUNCTION(BlueprintCallable, Client, Reliable)
void Client_UpdateKillFeed(FText Killer, FText Victim, bool bKillerTeam, bool bVictimTeam, class UDamageType* DamageType);
// MyClass.cpp
void UKillFeedWindow::Client_UpdateKillFeed_Implementation(FText Killer, FText Victim, bool bKillerTeam, bool bVictimTeam, UDamageType* DamageType)
{
}
It refuses to compile with any complex arguments. It’ll accept bool, int32, etc, but things like FText and UDamageType return an error. I have no idea why
Error:
MyClass.cpp(11) : error C2511: ‘void MyClass::Client_UpdateKillFeed_Implementation(FText,FText,bool,bool,UDamageType *)’: overloaded member function not found in ‘MyClass’