5#include "CoreMinimal.h"
6#include "OnlineSubsystemPico.h"
7#include "Interfaces/OnlineLeaderboardInterface.h"
8#include "OnlineIdentityPico.h"
9#include "OnlineSubsystemPicoPackage.h"
11#define WRITE_LEADERBOARDS_PAGEINDEX FName(TEXT("WRITELEADERBOARDSPAGEINDEX"))
12#define WRITE_LEADERBOARDS_PAGESIZE FName(TEXT("WRITELEADERBOARDSPAGESIZE"))
33 FOnlineSubsystemPico& PicoSubsystem;
35 bool ReadPicoLeaderboards(
bool bOnlyFriends,
bool bOnlyLoggedInUser, FOnlineLeaderboardReadRef& ReadObject);
36 void OnReadLeaderboardsComplete(ppfMessageHandle Message,
bool bIsError,
bool bOnlyFriends,
bool bOnlyLoggedInUser,
const FOnlineLeaderboardReadRef& ReadObject);
38 const char* FilterTypeNames[4] = {
"None",
"Friends",
"Unknown",
"UserIds" };
39 const char* StartAtNames[4] = {
"Top",
"CenteredOnViewer",
"CenteredOnViewerOrTop",
"Unknown" };
41 static void SaveLog(
const ELogVerbosity::Type Verbosity,
const FString& Log);
44 const int MAX_REQUEST_SIZE = 100;
69 virtual bool ReadLeaderboards(
const TArray< TSharedRef<const FUniqueNetId> >& Players, FOnlineLeaderboardReadRef& ReadObject)
override;
83 virtual bool ReadLeaderboardsAroundRank(int32 Rank, uint32 Range, FOnlineLeaderboardReadRef& ReadObject)
override;
86 virtual bool ReadLeaderboardsAroundUser(TSharedRef<const FUniqueNetId> Player, uint32 Range, FOnlineLeaderboardReadRef& ReadObject)
override;
89 virtual void FreeStats(FOnlineLeaderboardRead& ReadObject)
override;
102 virtual bool WriteLeaderboards(
const FName& SessionName,
const FUniqueNetId& Player, FOnlineLeaderboardWrite& WriteObject)
override;
116 virtual bool WriteOnlinePlayerRatings(
const FName& SessionName, int32 LeaderboardId,
const TArray<FOnlinePlayerScore>& PlayerScores)
override;
119#if ENGINE_MINOR_VERSION > 26
120typedef TSharedPtr<FOnlineLeaderboardPico, ESPMode::ThreadSafe> FOnlineLeaderboardPicoPtr;
121#elif ENGINE_MINOR_VERSION > 24
Definition: OnlineLeaderboardInterfacePico.h:29
virtual bool FlushLeaderboards(const FName &SessionName) override
Executes developer-defined functions.
virtual bool ReadLeaderboardsForFriends(int32 LocalUserNum, FOnlineLeaderboardReadRef &ReadObject) override
Gets the entries of the friends of the current logged-in user on a leaderboard.
virtual bool WriteLeaderboards(const FName &SessionName, const FUniqueNetId &Player, FOnlineLeaderboardWrite &WriteObject) override
Writes an entry to a leaderboard for the current logged-in user.
virtual bool ReadLeaderboards(const TArray< TSharedRef< const FUniqueNetId > > &Players, FOnlineLeaderboardReadRef &ReadObject) override
Gets the entries of a leaderboard.