17#include "CoreMinimal.h"
18#include "OnlineSubsystemPico.h"
19#include "Interfaces/OnlineLeaderboardInterface.h"
20#include "OnlineIdentityPico.h"
21#include "OnlineSubsystemPicoPackage.h"
23#define WRITE_LEADERBOARDS_PAGEINDEX FName(TEXT("WRITELEADERBOARDSPAGEINDEX"))
24#define WRITE_LEADERBOARDS_PAGESIZE FName(TEXT("WRITELEADERBOARDSPAGESIZE"))
45 FOnlineSubsystemPico& PicoSubsystem;
47 bool ReadPicoLeaderboards(
bool bOnlyFriends,
bool bOnlyLoggedInUser, FOnlineLeaderboardReadRef& ReadObject);
48 void OnReadLeaderboardsComplete(ppfMessageHandle Message,
bool bIsError,
bool bOnlyFriends,
bool bOnlyLoggedInUser,
const FOnlineLeaderboardReadRef& ReadObject);
50 const char* FilterTypeNames[4] = {
"None",
"Friends",
"Unknown",
"UserIds" };
51 const char* StartAtNames[4] = {
"Top",
"CenteredOnViewer",
"CenteredOnViewerOrTop",
"Unknown" };
53 static void SaveLog(
const ELogVerbosity::Type Verbosity,
const FString& Log);
56 const int MAX_REQUEST_SIZE = 100;
81 virtual bool ReadLeaderboards(
const TArray< TSharedRef<const FUniqueNetId> >& Players, FOnlineLeaderboardReadRef& ReadObject)
override;
95 virtual bool ReadLeaderboardsAroundRank(int32 Rank, uint32 Range, FOnlineLeaderboardReadRef& ReadObject)
override;
98 virtual bool ReadLeaderboardsAroundUser(TSharedRef<const FUniqueNetId> Player, uint32 Range, FOnlineLeaderboardReadRef& ReadObject)
override;
101 virtual void FreeStats(FOnlineLeaderboardRead& ReadObject)
override;
114 virtual bool WriteLeaderboards(
const FName& SessionName,
const FUniqueNetId& Player, FOnlineLeaderboardWrite& WriteObject)
override;
128 virtual bool WriteOnlinePlayerRatings(
const FName& SessionName, int32 LeaderboardId,
const TArray<FOnlinePlayerScore>& PlayerScores)
override;
131#if ENGINE_MINOR_VERSION > 26
132typedef TSharedPtr<FOnlineLeaderboardPico, ESPMode::ThreadSafe> FOnlineLeaderboardPicoPtr;
133#elif ENGINE_MINOR_VERSION > 24
Definition: OnlineLeaderboardInterfacePico.h:41
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.