public void Register(string username, string email, string password, OnLoginSuccess onSuccess, OnLoginFailure onFailure) { var request = new RegisterPlayFabUserRequest { Username = username, Email = email, Password = password, InfoRequestParameters = new GetPlayerCombinedInfoRequestParams { GetUserAccountInfo = true } }; PlayFabClientAPI.RegisterPlayFabUser(request, result => { player.Name = result.Username; player.Id = result.PlayFabId; mode = GameSessionMode.Online; onSuccess.Invoke(player); }, error => { onFailure.Invoke(error.GenerateErrorReport()); }); }
/// <summary> /// Completes synchronously, cannot fail /// </summary> public void LoginOffline(OnLoginSuccess onSuccess) { player = new PlayerInfo { Name = "Peasant", Id = "N/A" }; mode = GameSessionMode.Offline; onSuccess.Invoke(player); }
public void LoginGuest(OnLoginSuccess onSuccess, OnLoginFailure onFailure) { #if UNITY_ANDROID var request = new LoginWithAndroidDeviceIDRequest { CreateAccount = true, InfoRequestParameters = new GetPlayerCombinedInfoRequestParams { GetUserAccountInfo = true } }; PlayFabClientAPI.LoginWithAndroidDeviceID(request, result => { player.Username = "******" + result.PlayFabId; player.UserId = result.PlayFabId; mode = GameSessionMode.Guest; onSuccess.Invoke(player); }, error => { onFailure.Invoke(error.GenerateErrorReport()); }); #elif UNITY_IOS var request = new LoginWithIOSDeviceIDRequest { CreateAccount = true, InfoRequestParameters = new GetPlayerCombinedInfoRequestParams { GetUserAccountInfo = true } }; PlayFabClientAPI.LoginWithIOSDeviceID(request, result => { player.Username = "******" + result.PlayFabId; player.UserId = result.PlayFabId; mode = GameSessionMode.Guest; onSuccess.Invoke(player); }, error => { onFailure.Invoke(error.GenerateErrorReport()); }); #else string guestID = PlayerPrefs.GetString("GuestID"); if (string.IsNullOrWhiteSpace(guestID)) { guestID = ""; for (var i = 0; i < 16; i++) { guestID += ((char)('A' + UnityEngine.Random.Range(0, 26))).ToString(); } PlayerPrefs.SetString("GuestID", guestID); } var request = new LoginWithCustomIDRequest { CreateAccount = true, CustomId = guestID, InfoRequestParameters = new GetPlayerCombinedInfoRequestParams { GetUserAccountInfo = true } }; PlayFabClientAPI.LoginWithCustomID(request, result => { player.Name = "Guest_PC_" + result.PlayFabId; player.Id = result.PlayFabId; mode = GameSessionMode.Guest; onSuccess.Invoke(player); }, error => { onFailure.Invoke(error.GenerateErrorReport()); }); #endif }