diff --git a/Source/AdvancedSessions/AdvancedSessions.Build.cs b/Source/AdvancedSessions/AdvancedSessions.Build.cs index 5cb504b..12fbcdd 100644 --- a/Source/AdvancedSessions/AdvancedSessions.Build.cs +++ b/Source/AdvancedSessions/AdvancedSessions.Build.cs @@ -7,7 +7,12 @@ public class AdvancedSessions : ModuleRules { PrivateIncludePaths.AddRange(new string[] { "AdvancedSessions/Private"/*, "OnlineSubsystemSteam/Private"*/ }); PublicIncludePaths.AddRange(new string[] { "AdvancedSessions/Public" }); - PublicDependencyModuleNames.AddRange(new string[] { "Core", "CoreUObject", "Engine", "InputCore", "OnlineSubsystem","CoreUObject", "OnlineSubsystemUtils", "Networking", "Sockets", "Steamworks", /*"Voice", "OnlineSubsystemSteam"*/ }); - PrivateDependencyModuleNames.AddRange(new string[] { "OnlineSubsystem", "Sockets", "Networking","OnlineSubsystemUtils" /*"Voice", "Steamworks","OnlineSubsystemSteam"*/}); + PublicDependencyModuleNames.AddRange(new string[] { "Core", "CoreUObject", "Engine", "InputCore", "OnlineSubsystem", "CoreUObject", "OnlineSubsystemUtils", "Networking", "Sockets"/*"Voice", "OnlineSubsystemSteam"*/ }); + PrivateDependencyModuleNames.AddRange(new string[] { "OnlineSubsystem", "Sockets", "Networking", "OnlineSubsystemUtils" /*"Voice", "Steamworks","OnlineSubsystemSteam"*/}); + + if ((Target.Platform == UnrealTargetPlatform.Win64) || (Target.Platform == UnrealTargetPlatform.Win32) || (Target.Platform == UnrealTargetPlatform.Linux) || (Target.Platform == UnrealTargetPlatform.Mac)) + { + PublicDependencyModuleNames.AddRange(new string[] { "Steamworks"/*"Voice", "OnlineSubsystemSteam"*/ }); + } } } \ No newline at end of file diff --git a/Source/AdvancedSessions/Classes/AdvancedFriendsLibrary.h b/Source/AdvancedSessions/Classes/AdvancedFriendsLibrary.h index 48eb676..4936a76 100644 --- a/Source/AdvancedSessions/Classes/AdvancedFriendsLibrary.h +++ b/Source/AdvancedSessions/Classes/AdvancedFriendsLibrary.h @@ -61,6 +61,11 @@ public: UFUNCTION(BlueprintPure, Category = "Online|AdvancedFriends|FriendsList") static void IsAFriend(APlayerController *PlayerController, const FBPUniqueNetId UniqueNetId, bool &IsFriend); + + + +#if PLATFORM_WINDOWS || PLATFORM_MAC || PLATFORM_LINUX + // Get a texture of a valid friends avatar, STEAM ONLY, Returns invalid texture if the subsystem hasn't loaded that size of avatar yet UFUNCTION(BlueprintCallable, Category = "Online|AdvancedFriends|SteamAPI") static UTexture2D * GetSteamFriendAvatar(const FBPUniqueNetId UniqueNetId, SteamAvatarSize AvatarSize = SteamAvatarSize::SteamAvatar_Medium); @@ -73,4 +78,6 @@ public: UFUNCTION(BlueprintCallable, Category = "Online|AdvancedFriends|SteamAPI") static int32 GetFriendSteamLevel(const FBPUniqueNetId UniqueNetId); +#endif + }; diff --git a/Source/AdvancedSessions/Private/AdvancedFriendsLibrary.cpp b/Source/AdvancedSessions/Private/AdvancedFriendsLibrary.cpp index a72c29f..30a4441 100644 --- a/Source/AdvancedSessions/Private/AdvancedFriendsLibrary.cpp +++ b/Source/AdvancedSessions/Private/AdvancedFriendsLibrary.cpp @@ -12,6 +12,8 @@ #pragma warning(disable:4996) #endif +#if PLATFORM_WINDOWS || PLATFORM_MAC || PLATFORM_LINUX + #pragma push_macro("ARRAY_COUNT") #undef ARRAY_COUNT @@ -19,6 +21,8 @@ #pragma pop_macro("ARRAY_COUNT") +#endif + // @todo Steam: See above #ifdef _MSC_VER #pragma warning(pop) @@ -27,7 +31,7 @@ //General Log DEFINE_LOG_CATEGORY(AdvancedFriendsLog); - +#if PLATFORM_WINDOWS || PLATFORM_MAC || PLATFORM_LINUX int32 UAdvancedFriendsLibrary::GetFriendSteamLevel(const FBPUniqueNetId UniqueNetId) { if (!UniqueNetId.IsValid() || !UniqueNetId.UniqueNetId->IsValid()) @@ -152,6 +156,7 @@ UTexture2D * UAdvancedFriendsLibrary::GetSteamFriendAvatar(const FBPUniqueNetId UE_LOG(AdvancedFriendsLog, Warning, TEXT("STEAM Couldn't be verified as initialized")); return nullptr; } +#endif void UAdvancedFriendsLibrary::SendSessionInviteToFriends(APlayerController *PlayerController, const TArray &Friends, TEnumAsByte &Result) {