mirror of
https://github.com/mordentral/AdvancedSessionsPlugin.git
synced 2025-10-22 16:04:18 +00:00
sdf
This commit is contained in:
@@ -21,7 +21,7 @@ class UFindSessionsCallbackProxyAdvanced : public UOnlineBlueprintCallProxyBase
|
||||
|
||||
// Searches for advertised sessions with the default online subsystem and includes an array of filters
|
||||
UFUNCTION(BlueprintCallable, meta = (BlueprintInternalUseOnly = "true", WorldContext = "WorldContextObject", AutoCreateRefTerm="Filters"), Category = "Online|AdvancedSessions")
|
||||
static UFindSessionsCallbackProxyAdvanced* FindSessionsAdvanced(UObject* WorldContextObject, class APlayerController* PlayerController, int32 MaxResults, bool bUseLAN, const TArray<FSessionsSearchSetting> &Filters);
|
||||
static UFindSessionsCallbackProxyAdvanced* FindSessionsAdvanced(UObject* WorldContextObject, class APlayerController* PlayerController, int32 MaxResults, bool bUseLAN, bool bSearchDedicated, const TArray<FSessionsSearchSetting> &Filters);
|
||||
|
||||
static bool CompareVariants(const FVariantData &A, const FVariantData &B, EOnlineComparisonOpRedux::Type Comparator);
|
||||
|
||||
@@ -67,6 +67,9 @@ private:
|
||||
// Whether or not to search LAN
|
||||
bool bUseLAN;
|
||||
|
||||
// Whether or not to search for dedicated servers
|
||||
bool bUseDedicated;
|
||||
|
||||
// Maximum number of results to return
|
||||
int MaxResults;
|
||||
|
||||
|
@@ -22,6 +22,7 @@ UFindSessionsCallbackProxyAdvanced* UFindSessionsCallbackProxyAdvanced::FindSess
|
||||
Proxy->MaxResults = MaxResults;
|
||||
Proxy->WorldContextObject = WorldContextObject;
|
||||
Proxy->SearchSettings = Filters;
|
||||
Procy->bUseDedicated = bUseDedicated;
|
||||
return Proxy;
|
||||
}
|
||||
|
||||
@@ -36,7 +37,7 @@ void UFindSessionsCallbackProxyAdvanced::Activate()
|
||||
if (Sessions.IsValid())
|
||||
{
|
||||
DelegateHandle = Sessions->AddOnFindSessionsCompleteDelegate_Handle(Delegate);
|
||||
|
||||
|
||||
SearchObject = MakeShareable(new FOnlineSessionSearch);
|
||||
SearchObject->MaxSearchResults = MaxResults;
|
||||
SearchObject->bIsLanQuery = bUseLAN;
|
||||
@@ -44,7 +45,11 @@ void UFindSessionsCallbackProxyAdvanced::Activate()
|
||||
|
||||
// Create temp filter variable, because I had to re-define a blueprint version of this, it is required.
|
||||
FOnlineSearchSettingsEx tem;
|
||||
tem.Set(SEARCH_PRESENCE, true, EOnlineComparisonOp::Equals);
|
||||
|
||||
if (!bUseDedicated)
|
||||
{
|
||||
tem.Set(SEARCH_PRESENCE, true, EOnlineComparisonOp::Equals);
|
||||
}
|
||||
|
||||
// Filter results
|
||||
if (SearchSettings.Num() > 0)
|
||||
|
Reference in New Issue
Block a user