diff --git a/AdvancedSteamSessions/Source/AdvancedSteamSessions/Classes/AdvancedSteamFriendsLibrary.h b/AdvancedSteamSessions/Source/AdvancedSteamSessions/Classes/AdvancedSteamFriendsLibrary.h index 7d8cead..df64d3d 100644 --- a/AdvancedSteamSessions/Source/AdvancedSteamSessions/Classes/AdvancedSteamFriendsLibrary.h +++ b/AdvancedSteamSessions/Source/AdvancedSteamSessions/Classes/AdvancedSteamFriendsLibrary.h @@ -267,7 +267,9 @@ enum class ESteamUserOverlayType : uint8 /*Opens the overlay in minimal mode prompting the user to accept an incoming friend invite.*/ friendrequestaccept, /*Opens the overlay in minimal mode prompting the user to ignore an incoming friend invite.*/ - friendrequestignore + friendrequestignore, + /*Opens the invite overlay, invitations sent from this dialog will be for the provided lobby*/ + invitetolobby }; static FString EnumToString(const FString& enumName, uint8 value) diff --git a/AdvancedSteamSessions/Source/AdvancedSteamSessions/Private/AdvancedSteamFriendsLibrary.cpp b/AdvancedSteamSessions/Source/AdvancedSteamSessions/Private/AdvancedSteamFriendsLibrary.cpp index 91f822e..bd8eb50 100644 --- a/AdvancedSteamSessions/Source/AdvancedSteamSessions/Private/AdvancedSteamFriendsLibrary.cpp +++ b/AdvancedSteamSessions/Source/AdvancedSteamSessions/Private/AdvancedSteamFriendsLibrary.cpp @@ -245,8 +245,15 @@ bool UAdvancedSteamFriendsLibrary::OpenSteamUserOverlay(const FBPUniqueNetId Uni if (SteamAPI_Init()) { uint64 id = *((uint64*)UniqueNetId.UniqueNetId->GetBytes()); - FString DialogName = EnumToString("ESteamUserOverlayType", (uint8)DialogType); - SteamFriends()->ActivateGameOverlayToUser(TCHAR_TO_ANSI(*DialogName), id); + if (DialogType == ESteamUserOverlayType::invitetolobby) + { + SteamFriends()->ActivateGameOverlayInviteDialog(id); + } + else + { + FString DialogName = EnumToString("ESteamUserOverlayType", (uint8)DialogType); + SteamFriends()->ActivateGameOverlayToUser(TCHAR_TO_ANSI(*DialogName), id); + } return true; } #endif