Как я могу преобразовать этот код Unity в код MonoGame? - PullRequest
0 голосов
/ 30 мая 2019

Я не знаю, как использовать PlayFab в проекте MonoGame.Я прочитал несколько учебных пособий по PlayFab, но все они предназначены для Unity, и я думаю, что невозможно использовать примеры кода Unity с MonoGame, потому что я всегда получаю сообщения об ошибках.

Из этой строки кода.

PlayFabClientAPI.GetUserInventoryAsync(new GetUserInventoryRequest(), OnGetUserInventoryRequest, OnPlayFabInventoryError);

Я получаю сообщения об ошибках здесь:

Ошибка CS1503: Аргумент 2: невозможно преобразовать из «группы методов» в «объект»

Ошибка CS1503: Аргумент3: невозможно преобразовать «группу методов» в «словарь»

Что-то не так с «OnGetUserInventoryRequest, OnPlayFabInventoryError», но я не знаю, что можно изменить.

Чтоможно изменить, чтобы этот код работал с MonoGame?

enter image description here

https://api.playfab.com/documentation/client/method/GetUserInventory

Пример кода

public void GetInventoryList()
{
    PlayFabClientAPI.GetUserInventoryAsync(new GetUserInventoryRequest(), OnGetUserInventoryRequest, OnPlayFabInventoryError);
}
public void OnGetUserInventoryRequest(GetUserInventoryResult result)
{
    Console.WriteLine(result.VirtualCurrency);
}

public void OnPlayFabInventoryError(PlayFabError result)
{
    Console.WriteLine("Error");
}

РЕДАКТИРОВАТЬ:

Я получаю новое сообщение об ошибке, если я хочу использовать значение VirtualCurrency.Я не знаю, как получить значение VirtualCurrency, что я делаю неправильно?

private async Task GetInventoryList()
{
    var result = await PlayFabClientAPI.GetUserInventoryAsync(new GetUserInventoryRequest());

    int CurrentAmount = result.Result.VirtualCurrency;
}

Ошибка CS0029: не удается неявно преобразовать тип 'System.Collections.Generic.Dictionary' в 'int'

enter image description here

1 Ответ

0 голосов
/ 30 мая 2019

это довольно очевидно, если вы посмотрите на сигнатуру метода:

GetUserInventoryAsync(GetUserInventoryRequest request, object customData = null, Dictionary<string,string> extraHeaders = null)

последние 2 параметра являются необязательными, и они не являются методами обратного вызова

...