public void AutoLogin() { BackendReturnObject BRO = Backend.BMember.LoginWithTheBackendToken(); if (BRO.IsSuccess()) { Debug.Log("자동 로그인 성공"); } else { string error = BRO.GetStatusCode(); switch (error) { case "GoneResourceException": Debug.Log("1년뒤 refresh_token이 만료된 경우"); break; case "BadUnauthorizedException": Debug.Log("다른 기기로 로그인 하여 refresh_token이 만료된 경우"); break; case "BadPlayer": Debug.Log("차단된 유저"); break; default: Debug.Log("로그인 완료"); break; } } }
public void OnClickLogin() { BackendReturnObject BRO = Backend.BMember.CustomLogin(idInput.text, paInput.text); if (BRO.IsSuccess()) { BackEndGameInfo.Instance.OnClickPublicContents(); Debug.Log("로그인 완료 / 정보 로드"); } else { string error = BRO.GetStatusCode(); switch (error) { case "401": Debug.Log("아이디 또는 비밀번호가 틀렸다."); break; case "403": Debug.Log("차단된 유저" + BRO.GetStatusCode()); break; default: Debug.Log("서버 공통 에러 발생" + BRO.GetMessage()); break; } } }
//table list Load public void OnClickGetTableList() { BackendReturnObject BRO = Backend.GameInfo.GetTableList(); if (BRO.IsSuccess()) { JsonData publics = BRO.GetReturnValuetoJSON()["publicTables"]; Debug.Log("public Tables--------------------------------"); foreach (JsonData row in publics) { Debug.Log(row.ToString()); } Debug.Log("Private Tables--------------------------------"); JsonData privates = BRO.GetReturnValuetoJSON()["privateTables"]; foreach (JsonData row in privates) { Debug.Log(row.ToString()); } } else { Debug.Log("서버 공통 에러 발생 : " + BRO.GetMessage()); } }
public void OnClickSignUp() { BackendReturnObject BRO = Backend.BMember.CustomSignUp(idInput.text, paInput.text, "Test1"); if (BRO.IsSuccess()) { Debug.Log("회원가입 완료"); BackEndGameInfo.Instance.OnClickInsertData(); } else { string error = BRO.GetStatusCode(); switch (error) { case "409": Debug.Log("중복된 customId가 존재하는 경우"); break; default: Debug.Log("서버 공통 에러" + BRO.GetMessage()); break; } } }
// Insert 는 '생성' 작업에 주로 사용된다. public void InsertUserStatDataTable() { // Param은 뒤끝 서버와 통신을 할 떄 넘겨주는 파라미터 클래스 입니다. Param param = new Param(); BackendReturnObject BRO = Backend.GameData.Insert("UserStatTable", param); if (BRO.IsSuccess()) { Debug.Log("indate : " + BRO.GetInDate()); } else { switch (BRO.GetStatusCode()) { case "404": Debug.Log("존재하지 않는 tableName인 경우"); break; case "412": Debug.Log("비활성화 된 tableName인 경우"); break; case "413": Debug.Log("하나의 row( column들의 집합 )이 400KB를 넘는 경우"); break; default: Debug.Log("서버 공통 에러 발생: " + BRO.GetMessage()); break; } } }
public void OK() { if (!CheckLength()) { return; } if (!CheckNickname()) { return; } if (UserInfo.instance.GetUserCrystal() < 10) { return; } BackendReturnObject bro = Backend.BMember.CreateNickname(nicknameInput.text); if (bro.IsSuccess()) { this.gameObject.SetActive(false); UserInfo.instance.nickname = nicknameInput.text; UserInfo.instance.PullUserCrystal(10); UserInfo.instance.SaveUserCrystal(() => { }); UpperInfo.instance.CrystalSet(); } nicknameInput.text = ""; }
// 동기 방식 친구 리스트 조회 public void getFriendList() { BackendReturnObject BRO = Backend.Social.Friend.GetFriendList(); if (BRO.IsSuccess()) { JsonData jsonData = BRO.GetReturnValuetoJSON()["rows"]; for (int i = 0; i < jsonData.Count; i++) { JsonData Data = jsonData[i]; string nickname = Data["nickname"][0].ToString(); string indate = Data["inDate"][0].ToString(); for (int j = 0; j < FriendList.childCount; j++) { if (!FriendList.GetChild(j).gameObject.activeSelf) { FriendList.GetChild(j).GetChild(1).GetComponent <Text>().text = nickname; FriendList.GetChild(j).GetChild(2).GetComponent <Text>().text = indate; FriendList.GetChild(j).gameObject.SetActive(true); break; } } } print("동기 방식 친구 리스트 조회 성공"); } }
private void SetChartFilUUIDList(BackendReturnObject listBRO) { if (listBRO.IsSuccess()) { ChartFileUuidList.Clear(); JsonData rows = listBRO.GetReturnValuetoJSON()["rows"]; string ChartFileUuid; for (int i = 0; i < rows.Count; i++) { ChartFileUuid = string.Empty; JsonData data = rows[i]; if (data.Keys.Contains("selectedChartFile")) { ChartFileUuid = data["selectedChartFile"]["M"]["uuid"]["S"].ToString(); } else if (data.Keys.Contains("selectedChartFileId")) { if (!data["selectedChartFileId"].Keys.Contains("NULL")) { ChartFileUuid = data["selectedChartFileId"]["N"].ToString(); } } // ChartFileUuid 가 정상적으로 존재하는 경우 -> 리스트에 저장 if (!string.IsNullOrEmpty(ChartFileUuid)) { Debug.Log(ChartFileUuid); ChartFileUuidList.Add(ChartFileUuid); } } } }
public void BtnRegist() { string t_id = id.text; string t_pw = pw.text; string t_repw = repw.text; if (t_repw == t_pw) { BackendReturnObject bro = Backend.BMember.CustomSignUp(t_id, t_pw, ""); if (bro.IsSuccess()) { Debug.Log("회원가입 성공"); this.gameObject.SetActive(false); } else { Debug.Log("회원가입 실패"); } } else { Debug.Log("비밀번호가 일치하지 않습니다."); } this.gameObject.SetActive(false); loginUI.gameObject.SetActive(true); }
// 커스텀 계정을 구글 계정으로 public void OnClickChangeCustomToFederation() { BackendReturnObject BRO = Backend.BMember.ChangeCustomToFederation(GetTokens(), FederationType.Google); if (BRO.IsSuccess()) { Debug.Log("페더레이션 계정으로 변경 완료"); } else { switch (BRO.GetStatusCode()) { case "400": if (BRO.GetErrorCode() == "BadParameterException") { Debug.Log("이미 ChangeCustomToFederation 완료 되었는데 다시 시도한 경우"); } else if (BRO.GetErrorCode() == "UndefinedParameterException") { Debug.Log("customLogin 하지 않은 상황에서 시도한 경우"); } break; case "409": // 이미 가입되어 있는 경우 Debug.Log("Duplicated federationId, 중복된 federationId 입니다"); break; } } }
// 초기화 함수 이후에 실행되는 callback void backendCallback(BackendReturnObject BRO) { //프로세싱 팝업 끄기 DispatcherAction(() => BackEndUIManager.instance.SetProcessing(false)); // 초기화 성공한 경우 실행 if (BRO.IsSuccess()) { // 구글 해시키 획득 if (!string.IsNullOrEmpty(Backend.Utils.GetGoogleHash())) { Debug.Log(Backend.Utils.GetGoogleHash()); } // 서버시간 획득 Debug.Log(Backend.Utils.GetServerTime()); // Application 버전 확인 CheckApplicationVersion(); } // 초기화 실패한 경우 실행 else { ShowMessage("초기화 실패", 3f); Debug.Log("초기화 실패 - " + BRO); } }
private IEnumerator LoadRewardedPushInfo() { yield return(new WaitUntil(() => this.isLoginSuccess)); BackendReturnObject bro = Backend.GameInfo.GetPrivateContents("PushReward"); var pushList = bro.GetReturnValuetoJSON()["rows"]; if (pushList.Count == 0) { Param newPushRewardParam = new Param(); BackendReturnObject insertBro = Backend.GameInfo.Insert("PushReward", newPushRewardParam); if (insertBro.IsSuccess()) { BackendReturnObject reBro = Backend.GameInfo.GetPrivateContents("PushReward"); this.inDateForPushReward = reBro.GetReturnValuetoJSON()["rows"][0]["inDate"]["S"].ToString(); } } else { this.inDateForPushReward = pushList[0]["inDate"]["S"].ToString(); JsonData pushJson = pushList[0] as JsonData; for (int i = 0; i < MAX_NUM_PUSH_REWARD_TYPE; ++i) { string pushId = string.Format("Id_{0}", i); if (pushJson.Keys.Contains(pushId)) { this.rewardedPushDictionary.Add(pushId, DateTime.Parse(pushJson[pushId]["S"].ToString())); } } } this.isLoadedRewardedPushInfo = true; }
//private IEnumerator GetChannelList() //{ // returnChannelList = false; // //public 채널 리스트 받아오기 // if (!chatStatus) // yield break; // channelList.Clear(); // BackendAsyncClass.BackendAsync(Backend.Chat.GetChannelList, callback => // { // if (!callback.IsSuccess() || callback.IsServerError()) // { // Debug.Log("Fail To Get Chat Channel - " + callback); // ShowMessage(CHAT_INACTIVE); // returnChannelList = false; // } // else // { // JsonData rows = callback.GetReturnValuetoJSON()["rows"]; // Debug.Log(rows.ToString()); // ChannelNodeObject node; // foreach (JsonData data in rows) // { // node = new ChannelNodeObject(channelType, data["uuid"].ToString(), (int)data["joinedUserCount"], (int)data["maxUserCount"], // data["serverHostName"].ToString(), data["serverPort"].ToString(), data["alias"].ToString()); // channelList.Add(node); // } // returnChannelList = true; // } // reply_channel = true; // }); // yield return new WaitUntil(() => reply_channel); // if (returnChannelList == false) // ShowMessage("GetChannelList : " + CHAT_INACTIVE); //} private bool GetChannelList() { // Public 채널 리스트 받아오기 if (!chatStatus) { return(false); } channelList.Clear(); BackendReturnObject chatChannelStatusBRO = Backend.Chat.GetChannelList(); if (!chatChannelStatusBRO.IsSuccess() || chatChannelStatusBRO.IsServerError()) { ShowMessage(CHAT_INACTIVE); chatStatus = false; Debug.Log("Fail To Get Chat Channel - " + chatChannelStatusBRO); return(false); } JsonData rows = chatChannelStatusBRO.GetReturnValuetoJSON()["rows"]; ChannelNodeObject node; foreach (JsonData data in rows) { node = new ChannelNodeObject(channelType, data["uuid"].ToString(), (int)data["joinedUserCount"], (int)data["maxUserCount"], data["serverHostName"].ToString(), data["serverPort"].ToString(), data["alias"].ToString()); channelList.Add(node); } chatStatus = true; return(true); }
/* * 뒤끝챗 서버 접속 * 활성화 된 일반채널 접속 */ //뒤끝챗 서버 접속 //private IEnumerator GetChatStatus() //{ // chatStatus = false; // channelType = ChannelType.Public; // //현재 채팅서버 상태를 호출함 // BackendAsyncClass.BackendAsync(Backend.Chat.GetChatStatus, callback => // { // if (!callback.IsSuccess() || callback.IsServerError()) // { // ShowMessage(callback.ToString()); // Debug.Log("Fail to Connect Chat Server - " + callback); // } // else // { // string chatServerStatus = callback.GetReturnValuetoJSON()["chatServerStatus"]["chatServer"].ToString(); // chatStatus |= chatServerStatus.Equals("y"); // Debug.Log("chatStatus - " + chatStatus + " : " + callback); // chatStatus = true; // } // reply_chat = true; // }); // yield return new WaitUntil(() => reply_chat); // if (chatStatus == false) // { // ShowMessage("GetChatStatus : " + CHAT_INACTIVE); // } //} // 활성화된 채널 리스트 받아오기 (public) private bool GetChatStatus() { //현재 채팅서버 상태를 호출함 BackendReturnObject chatStatusBRO = Backend.Chat.GetChatStatus(); chatStatus = false; channelType = ChannelType.Public; if (!chatStatusBRO.IsSuccess()) { ShowMessage(chatStatusBRO.ToString()); Debug.Log("Fail To Connect Chat Server - " + chatStatusBRO); return(false); } string chatServerStatus = chatStatusBRO.GetReturnValuetoJSON()["chatServerStatus"]["chatServer"].ToString(); chatStatus |= chatServerStatus.Equals("y"); Debug.Log("chatStatus - " + chatStatus); //chatStatus = true; if (!chatStatus) { ShowMessage(CHAT_INACTIVE); return(false); } return(true); }
void Start() { #if UNITY_ANDROID PlayGamesClientConfiguration config = new PlayGamesClientConfiguration .Builder() .RequestServerAuthCode(false) //뒤끝 파이어베이스 등 구글 토큰 사용하려면 flase로. .RequestEmail() //이메일 요청. .RequestIdToken() //토큰 요청. .Build(); //커스텀된 정보로 GPS 초기화. PlayGamesPlatform.InitializeInstance(config); PlayGamesPlatform.DebugLogEnabled = false; //GPGS 시작. PlayGamesPlatform.Activate(); #endif BackendReturnObject bro = Backend.BMember.LoginWithTheBackendToken(); if (bro.IsSuccess()) { LoginCanvas.SetActive(false); TapCanvs.SetActive(true); //Managers.Scene.LoadScene(Define.Scene.Main); //BackendReturnObject bro2 = Backend.BMember.GetUserInfo(); //string federationId = bro2.GetReturnValuetoJSON()["row"]["federationId"].ToString(); //Debug.Log(federationId); } }
// 동기 방식 보낸 쪽지 리스트 조회 public void getSendMessage() { BackendReturnObject BRO = Backend.Social.Message.GetSentMessageList(); if (BRO.IsSuccess()) { JsonData jsonData = BRO.GetReturnValuetoJSON()["rows"]; for (int i = 0; i < jsonData.Count; i++) { JsonData Data = jsonData[i]; string nickname = Data["receiverNickname"][0].ToString(); string inDate = Data["inDate"][0].ToString(); for (int j = 0; j < messageSendList.childCount; j++) { if (!messageReceivedList.GetChild(j).gameObject.activeSelf) { messageSendList.GetChild(j).GetChild(1).GetComponent <Text>().text = nickname + "\n님께 보냄"; messageSendList.GetChild(j).GetChild(2).GetComponent <Text>().text = inDate; messageSendList.GetChild(j).gameObject.SetActive(true); break; } } } } }
public void IncreaseStat(Car_Information car, DesignConstStorage.StatList stat, int increaseAmount = 1) { string cName = car.CarName; GetFreshCarStat(); car = Game_Manager.Instance.CarStat[cName]; car.IncreaseStat(stat, increaseAmount); Param param = new Param(); //param.AddCalculation(car.CarName, GameInfoOperator.addition, increaseAmount); //BackendReturnObject bro = Backend.GameInfo.UpdateWithCalculation(DesignConstStorage.tNameCarStat, PInfo.carinDate, param); Dictionary <string, int> status = new Dictionary <string, int>(); status.Add(DesignConstStorage.CarStatDoneName[0], car.TSD); status.Add(DesignConstStorage.CarStatDoneName[1], car.BRD); status.Add(DesignConstStorage.CarStatDoneName[2], car.COD); status.Add(DesignConstStorage.CarStatDoneName[3], car.ACD); param.Add(car.CarName, status); BackendReturnObject bro = Backend.GameInfo.Update(DesignConstStorage.tNameCarStat, PInfo.carinDate, param); if (bro.IsSuccess()) { #if UNITY_EDITOR int temp = 0; switch (stat) { case DesignConstStorage.StatList.accelerating: temp = car.ACD; break; case DesignConstStorage.StatList.brake: temp = car.BRD; break; case DesignConstStorage.StatList.cornering: temp = car.COD; break; case DesignConstStorage.StatList.topspeed: temp = car.TSD; break; } //Debug.Log("업그레이드 성공 !! 현재 업그레이드 횟수 : " + temp); #endif } else { string sCode = bro.GetStatusCode(); //Debug.LogError(sCode); } }
// 동기 방식 이메일 등록 public void UpdateEmail() { BackendReturnObject BRO = Backend.BMember.UpdateCustomEmail(email.text); if (BRO.IsSuccess()) { print("동기 방식 이메일 등록 완료"); } }
public void AGetPublicContents() { Debug.Log("-----------------AGet Public Contents-----------------"); BackendAsync(Backend.GameInfo.GetPublicContents, public_table_name, bro => { Debug.Log(bro); }); BackendAsync(Backend.GameInfo.GetPublicContents, public_table_name, 2, bro => { Debug.Log(bro); if (bro.IsSuccess()) { GetGameInfo(bro.GetReturnValuetoJSON()); } }); }
public int DuplicateNickNameCheck(string _newNickName) { BackendReturnObject bro = Backend.BMember.CheckNicknameDuplication(_newNickName); if (bro.IsSuccess()) { return(0); } return(int.Parse(bro.GetStatusCode())); }
public void OnClickCutomLogin() { BackendReturnObject bro = Backend.BMember.CustomLogin(InputField_Id.text, InputField_Pw.text); if (bro.IsSuccess()) { Debug.Log("로그인에 성공했습니다"); LoginCanvas.SetActive(false); TapCanvs.SetActive(true); } }
// 동기 방식 이메일 등록 bool UpdateEmail(string Email) { BackendReturnObject BRO = Backend.BMember.UpdateCustomEmail(Email); if (BRO.IsSuccess()) { return(true); } return(false); }
void backendCallback(BackendReturnObject bro) { if (bro.IsSuccess()) { Debug.Log("초기화 성공"); } else { Debug.Log("초기화 실패"); } }
private void ConfirmUser() { StartCoroutine(LoadManager.instance.LoadingTextCO()); BackendReturnObject state = Backend.Utils.GetServerStatus(); var serverStatus = state.GetReturnValuetoJSON()["serverStatus"].ToString(); if (serverStatus.Equals("2")) { serverShotDownPopUp.SetActive(true); return; } var appVer = Application.version; var str = appVer.Split('.'); var realAppVer = int.Parse(str[str.Length - 1]); #if UNITY_EDITOR #elif UNITY_ANDROID BackendReturnObject version = Backend.Utils.GetLatestVersion(); var serverVer = int.Parse(version.GetReturnValuetoJSON()["version"].ToString()); var type = version.GetReturnValuetoJSON()["type"].ToString(); if (realAppVer < serverVer) { versionUpdatePopUp.SetActive(true); return; } #endif BackendReturnObject userinfo = Backend.BMember.GetUserInfo(); if (userinfo.IsSuccess()) { JsonData nickname = userinfo.GetReturnValuetoJSON()["row"]["nickname"]; if (nickname == null) { termsPopUp.SetActive(true); } else { SaveManager.instance.nickName = nickname.ToString(); StartCoroutine(TableDataLoadManager.instance.Load(false)); } JsonData email = userinfo.GetReturnValuetoJSON()["row"]["emailForFindPassword"]; #if ANDROID if (email == null) { bro = Backend.BMember.UpdateFederationEmail(GetTokens(), FederationType.Google); } #endif } }
//에디터 환경 개발 위한 커스텀 계정 회원가입 및 로그인 기능 (출시 시 삭제 예정) public void OnClickCustomSignUp() { BackendReturnObject bro = Backend.BMember.CustomSignUp(InputField_Id.text, InputField_Pw.text); if (bro.IsSuccess()) { Debug.Log("회원가입에 성공했습니다"); gameObject.GetComponent <BackEndGameInfo>().InsertUserStatDataTable(); //유저 스탯 테이블 생성. gameObject.GetComponent <BackEndGameInfo>().InsertUserAssetDataTable(); //유저 자산 테이블 생성. gameObject.GetComponent <BackEndGameInfo>().InsertUnitCaptureCountTable(); //유저 유닛 포획 도감 테이블 생성. } }
/* * 프라이빗 테이블 안의 로그인된 유저 정보를 반환함 * 모든 정보를 반환함 (limit/ offset 적용 불가) */ public void GetPrivateContents() { Debug.Log("-----------------Get Private Contents-----------------"); BackendReturnObject backendReturnObject = Backend.GameInfo.GetPrivateContents(private_table_name); Debug.Log(backendReturnObject); if (backendReturnObject.IsSuccess()) { GetGameInfo(backendReturnObject.GetReturnValuetoJSON()); Debug.Log(backendReturnObject.GetReturnValuetoJSON()["rows"].Count); } }
// 게임 테이블 리스트 불러옴 public void GetTableList() { Debug.Log("-----------------Get Table List-----------------"); BackendReturnObject tablelist = Backend.GameInfo.GetTableList(); Debug.Log(tablelist); if (tablelist.IsSuccess()) { SetTable(tablelist.GetReturnValuetoJSON()); } }
// 동기 방식 보낸 쪽지 삭제 public void deleteSendMessage() { string inDate = EventSystem.current.currentSelectedGameObject.transform.parent.GetChild(2).GetComponent <Text>().text; BackendReturnObject BRO = Backend.Social.Message.DeleteSentMessage(inDate); if (BRO.IsSuccess()) { EventSystem.current.currentSelectedGameObject.transform.parent.gameObject.SetActive(false); print("동기 방식 보낸 쪽지 삭제 완료"); } }
// 동기 방식 친구 삭제 public void BreakFriend() { string inDate = EventSystem.current.currentSelectedGameObject.transform.parent.GetChild(2).GetComponent <Text>().text; BackendReturnObject BRO = Backend.Social.Friend.BreakFriend(inDate); if (BRO.IsSuccess()) { EventSystem.current.currentSelectedGameObject.transform.parent.gameObject.SetActive(false); print("동기 방식 친구 삭제 완료"); } }
void PrintData() { Backend.BMember.CustomLogin("admin", "admin"); BackendReturnObject UserDataBro = Backend.GameInfo.GetPublicContents("MaxScore"); if (UserDataBro.IsSuccess()) { int cnt = UserDataBro.GetReturnValuetoJSON()["rows"].Count; Debug.Log("DBcnt: " + cnt); for (int i = 0; i < cnt; i++) { string DBID = UserDataBro.GetReturnValuetoJSON()["rows"][i]["ID"]["S"].ToString(); string DBMaxscore = UserDataBro.GetReturnValuetoJSON()["rows"][i]["MaxScore"]["N"].ToString(); list.Add(Tuple.Create(DBID, DBMaxscore)); } list.Sort(delegate(Tuple <string, string> x, Tuple <string, string> y) { if (int.Parse(x.Item2) > int.Parse(y.Item2)) { return(-1); } else if (int.Parse(x.Item2) < int.Parse(y.Item2)) { return(1); } else { return(0); } }); int j = 0; foreach (Tuple <string, string> data in list) { texts[j].text = data.Item1; j++; if (j > 9) { break; } } } else { Debug.Log(UserDataBro.GetMessage()); } Backend.BMember.Logout(); }