17#include "Interfaces/OnlineAchievementsInterface.h"
18#include "OnlineIdentityPico.h"
19#include "OnlineSubsystemPicoPackage.h"
21#define USE_PICO_ACHIEVEMENT_DESC FName(TEXT("USE_PICO_ACHIEVEMENT_DESC"))
22#define USE_PICO_ACHIEVEMENT FName(TEXT("USE_PICO_ACHIEVEMNT"))
23#define USE_PICO_ACHIEVEMENT_WRITE FName(TEXT("USE_PICO_ACHIEVEMENT_WRITE"))
42 FString LockedImageURL;
43 FString UnlockedImageURL;
45 FString ToDebugString()
const
47 return FString::Printf( TEXT(
"Name=%s\nTitle=%s\nLockedDesc=%s\nUnlockedDesc=%s\nbIsHidden=%s\nType=%d\nTarget=%llu\nBitfieldLength=%u\nIsArchived: %s\nLockedImageURL: %s\nUnlockedImageURL: %s\nWritePolicy: %d\n"),
48 *Name, *Title.ToString(),
49 *LockedDesc.ToString(),
50 *UnlockedDesc.ToString(),
51 bIsHidden ? TEXT(
"true") : TEXT(
"false"),
55 IsArchived ? TEXT(
"true") : TEXT(
"false"),
83 Count = ppf_AchievementProgress_GetCount(AchievementProgress);
84 Bitfield = ppf_AchievementProgress_GetBitfield(AchievementProgress);
85 bIsUnlocked = ppf_AchievementProgress_GetIsUnlocked(AchievementProgress);
87 FString AchievementName = UTF8_TO_TCHAR(ppf_AchievementProgress_GetName(AchievementProgress));
88 UE_LOG_ONLINE_ACHIEVEMENTS(Display, TEXT(
"PPF_GAME FOnlineAchievementPico constructor ppf_AchievementProgress_GetName: %s, ppf_AchievementProgress_GetCount: %lld"), *AchievementName, ppf_AchievementProgress_GetCount(AchievementProgress));
96 UE_LOG_ONLINE_ACHIEVEMENTS(Display, TEXT(
"PPF_GAME FOnlineAchievementPico constructor by FOnlineAchievementDescPico AchievementDesc.Name: %s"), *AchievementDesc.Name);
97 Id = AchievementDesc.Name;
99 if (AchievementDesc.
Type == EAchievementType::Bitfield)
112 UE_LOG_ONLINE_ACHIEVEMENTS(Display, TEXT(
"PPF_GAME FOnlineAchievementPico constructor by FOnlineAchievement Id: %s"), *OnlineAchievementPico.Id);
113 Id = OnlineAchievementPico.Id;
114 Progress = OnlineAchievementPico.Progress;
135 void GetWriteAchievementCountValue(FVariantData VariantData,
long long& OutData)
const;
136 void GetWriteAchievementBitfieldValue(FVariantData VariantData, FString& OutData, uint32 BitfieldLength)
const;
140 void SaveLog(
const ELogVerbosity::Type Verbosity,
const FString & Log)
const;
142 const int MAX_REQUEST_SIZE = 50;
143 int GetAllProgressIndex = 0;
144 int GetAllDefinitionIndex = 0;
161 virtual void WriteAchievements(
const FUniqueNetId& PlayerId, FOnlineAchievementsWriteRef& WriteObject,
const FOnAchievementsWrittenDelegate& Delegate = FOnAchievementsWrittenDelegate())
override;
162 virtual void QueryAchievements(
const FUniqueNetId& PlayerId,
const FOnQueryAchievementsCompleteDelegate& Delegate = FOnQueryAchievementsCompleteDelegate())
override;
163 virtual void QueryAchievementDescriptions(
const FUniqueNetId& PlayerId,
const FOnQueryAchievementsCompleteDelegate& Delegate = FOnQueryAchievementsCompleteDelegate())
override;
164 virtual EOnlineCachedResult::Type GetCachedAchievement(
const FUniqueNetId& PlayerId,
const FString& AchievementId, FOnlineAchievement& OutAchievement)
override;
165 virtual EOnlineCachedResult::Type GetCachedAchievements(
const FUniqueNetId& PlayerId, TArray<FOnlineAchievement> & OutAchievements)
override;
166 virtual EOnlineCachedResult::Type GetCachedAchievementDescription(
const FString& AchievementId, FOnlineAchievementDesc& OutAchievementDesc)
override;
167#if !UE_BUILD_SHIPPING
168 virtual bool ResetAchievements(
const FUniqueNetId& PlayerId)
override;
Definition: OnlineAchievementsInterfacePico.h:123
FOnlineSubsystemPico & PicoSubsystem
Definition: OnlineAchievementsInterfacePico.h:127
TMap< FUniqueNetIdPico, TArray< FOnlineAchievement > > PlayerAchievements
Definition: OnlineAchievementsInterfacePico.h:130
virtual ~FOnlineAchievementsPico()
TMap< FString, FOnlineAchievementDescPico > AchievementDescriptions
Definition: OnlineAchievementsInterfacePico.h:133
FOnlineAchievementsPico(FOnlineSubsystemPico &InSubsystem)
EAchievementType
The type of the achievement.
Definition: OnlineSubsystemPicoNames.h:573
EAchievementWritePolicy
The write policy of the achievement.
Definition: OnlineSubsystemPicoNames.h:582
Definition: OnlineAchievementsInterfacePico.h:29
uint32 BitfieldLength
Definition: OnlineAchievementsInterfacePico.h:37
EAchievementType Type
Definition: OnlineAchievementsInterfacePico.h:31
uint64 Target
Definition: OnlineAchievementsInterfacePico.h:34
Definition: OnlineAchievementsInterfacePico.h:68
long long Count
Definition: OnlineAchievementsInterfacePico.h:70
FString Bitfield
Definition: OnlineAchievementsInterfacePico.h:73
bool bIsUnlocked
Definition: OnlineAchievementsInterfacePico.h:76