public void GetUserData(string key, string playerPlayFabID, Action <GetUserDataResultHolder> OnFinished = null) { GetUserDataResultHolder finalResultHolder = new GetUserDataResultHolder(); PlayFabClientAPI.GetUserData(new GetUserDataRequest() { PlayFabId = playerPlayFabID, Keys = null }, result => { Debug.Log("Got user " + playerPlayFabID + " data:"); if (result.Data == null || !result.Data.ContainsKey(key)) { Debug.Log("No key for " + key + " for user " + playerPlayFabID); finalResultHolder.response = Response.noKey; } else { //Debug.Log("key: " + result.Data[key].Value); finalResultHolder.response = Response.result; finalResultHolder.value = result.Data[key].Value; } OnFinished?.Invoke(finalResultHolder); }, (error) => { Debug.Log("Got error retrieving " + playerPlayFabID + " user data: "); Debug.Log(error.GenerateErrorReport()); finalResultHolder.response = Response.Error; OnFinished?.Invoke(finalResultHolder); }); }
private void OnFinishedGettingLevelData(GetUserDataResultHolder levelCountRequestResult) { switch (levelCountRequestResult.response) { case Response.Error: Debug.Log("Error in getting levels data."); break; case Response.noKey: Debug.Log("No level found with this key."); break; case Response.result: LoadLevel.instance.LoadLevelWithCode(levelCountRequestResult.value); break; } }
private void OnFinishedGettingLevelAmount(GetUserDataResultHolder levelCountRequestResult) { switch (levelCountRequestResult.response) { case Response.Error: Debug.Log("Error in getting shared levels amount"); sharedLevelsAmount = -1; break; case Response.noKey: sharedLevelsAmount = 0; break; case Response.result: sharedLevelsAmount = int.Parse(levelCountRequestResult.value); break; } _afterGettingLevelAmountDelegate.Invoke(); }
public void GetUserReadOnlyData(string playFabId, string key, Action <GetUserDataResultHolder> onFinished = null) { GetUserDataResultHolder finalResultHolder = new GetUserDataResultHolder(); PlayFabServerAPI.GetUserReadOnlyData(new PlayFab.ServerModels.GetUserDataRequest() { PlayFabId = playFabId, Keys = new List <string>() { key }, }, result => { if (result.Data == null || !result.Data.ContainsKey(key)) { Debug.Log("No " + key); finalResultHolder.response = Response.noKey; } else { Debug.Log(key + ": " + result.Data[key].Value); finalResultHolder.response = Response.result; finalResultHolder.value = result.Data[key].Value; } onFinished?.Invoke(finalResultHolder); }, error => { Debug.Log("Got error getting read-only user data:"); Debug.Log(error.GenerateErrorReport()); finalResultHolder.response = Response.Error; onFinished?.Invoke(finalResultHolder); }); }