PlayFab - creobitcom/Creobit.Backend GitHub Wiki
Модуль для работы с PlayFab.
Установка
- Импортировать пакет Assets/Creobit/Backend/PlayFab/Packages/UnitySDK.unitypackage и выполнить шаги для установки;
- Импортировать пакет Assets/Creobit/Backend/PlayFab/Packages/Injection.unitypackage;
- Добавить директиву препроцессора CREOBIT_BACKEND_PLAYFAB.
Инициализация
var playFabApplicationData = new PlayFabApplicationData();
var playFabAuth = new PlayFabAuth(titleId: "");
var playFabLink = new PlayFabLink();
var playFabStore = new PlayFabStore(catalogVersion: null, storeId: null)
{
CurrencyMap = new List<(string CurrencyId, string VirtualCurrency)>
{
( "Money", "RM" ),
( "Coins", "CC" )
},
ProductMap = new List<(string ProductId, string ItemId)>
{
("AppBox", "PlayFabBox"),
("AppKey", "PlayFabKey")
}
};
var playFabUser = new PlayFabUser(playFabAuth);
var playFabUserData = new PlayFabUserData();
PlayFabStore.CurrencyMap - содержит список соответствия ключей валют (Ключ валюты приложения / Идентификатор валюты PlayFab).
PlayFabStore.ProductMap - содержит список соответствия ключей продуктов (Ключ продукта приложения / Идентификатор предмета PlayFab).
Основные интерфейсы
IPlayFabAuth
Интерфейс аутентификации.
// Получить / установить LoginResult.
LoginResult LoginResult { get; set; }
// Получить TitleId.
string TitleId { get; }
IPlayFabErrorHandler
Интерфейс обработки ошибок PlayFab.
// Обработать ошибку.
void Process(PlayFabError playFabError);
IPlayFabStore
Интерфейс работы с магазином.
// Получить CatalogVersion.
string CatalogVersion { get; }
// Получить StoreId.
string StoreId { get; }
// Получить карту соответствия валют.
IEnumerable<(string CurrencyId, string VirtualCurrency)> CurrencyMap { get; }
// Получить карту соответствия продуктов
IEnumerable<(string ProductId, string ItemId)> ProductMap { get; }
IPlayFabStore
Интерфейс пользователя.
// Получить идентификатор.
string Id { get; }
// Недавно создан.
bool IsNewlyCreated { get; }
// Получить карту соответствия валют.
IEnumerable<(string CurrencyId, string VirtualCurrency)> CurrencyMap { get; }
// Получить карту соответствия продуктов
IEnumerable<(string ProductId, string ItemId)> ProductMap { get; }
Расширения
TODO