private void Start() { autoRequest = GetComponent <PlayFabAutoRequest>(); setNameResult = SETNAME_RESULT.NONE; if (waitConnect == default) { GameObject playFabManager = GameObject.Find("PlayFabManager"); waitConnect = playFabManager.GetComponent <PlayFabWaitConnect>(); } }
/// <summary> /// PlayfabへUserName(DisplayName)を更新する。 /// </summary> /// <param name="userName">変更したい名前</param> public void SetUserName(string userName) { // 取得した名前と同じだった場合は更新しない if (userName == DisplayName) { // 成功したことにする setNameResult = SETNAME_RESULT.SUCCESS; return; } // 通信待ちでなかったら通信開始 if (!waitConnect.GetWait(gameObject.name)) { // 通信待ちに設定する waitConnect.AddWait(gameObject.name); var request = new UpdateUserTitleDisplayNameRequest { DisplayName = userName }; PlayFabClientAPI.UpdateUserTitleDisplayName(request, OnSuccess, OnError); // 成功した場合 void OnSuccess(UpdateUserTitleDisplayNameResult result) { Debug.Log("SetDisplayName : success! " + result.DisplayName); DisplayName = result.DisplayName; // 通信終了 waitConnect.RemoveWait(gameObject.name); setNameResult = SETNAME_RESULT.SUCCESS; } // 失敗した場合 void OnError(PlayFabError error) { Debug.Log($"{error.Error}"); // 通信終了 waitConnect.RemoveWait(gameObject.name); setNameResult = SETNAME_RESULT.ERROR; } } }