public void OnClickSignIn()
    {
        signInButton.interactable = false;
        signUpButton.interactable = false;
        // 로그인
        HTTPNetworkManager.Instance.SignIn(usernameInputField.text, passwordInputField.text, (response) =>
        {
            // 세션ID 저장
            if (response.Headers.ContainsKey("Set-Cookie"))
            {
                string cookie = response.Headers["Set-Cookie"];

                int firstIndex = cookie.IndexOf('=') + 1;
                int lastIndex  = cookie.IndexOf(';');

                string cookieValue = cookie.Substring(firstIndex, lastIndex - firstIndex);

                PlayerPrefs.SetString("sid", cookieValue);
            }

            // 유저의 점수 표시
            HTTPResponseInfo info = response.GetDataFromMessage <HTTPResponseInfo>();
            MainManager.Instance.SetInfo(info.name, info.score);

            // 로그인창 닫기
            Hide();
        }, () =>
        {
            signInButton.interactable = true;
            signUpButton.interactable = true;
        });
    }
示例#2
0
    public void OnClickOK()
    {
        string username = usernameInputFiled.text;
        string password = firstPasswordInputField.text;
        string name     = nameInputField.text;

        SetInputFieldInteractable(false);

        HTTPNetworkManager.Instance.SignUp(username, password, name, (response) =>
        {
            SetInputFieldInteractable(true);

            if (response.Headers.ContainsKey("Set-Cookie"))
            {
                string cookie = response.Headers["Set-Cookie"];

                int firstIndex = cookie.IndexOf('=') + 1;
                int lastIndex  = cookie.IndexOf(';');

                string cookieValue = cookie.Substring(firstIndex, lastIndex - firstIndex);

                PlayerPrefs.SetString("sid", cookieValue);
            }

            // 유저의 점수 표시
            HTTPResponseInfo info = response.GetDataFromMessage <HTTPResponseInfo>();
            MainManager.Instance.SetInfo(info.name, info.score);

            // 회원가입창 닫기
            Hide();
        }, () =>
        {
            SetInputFieldInteractable(true);
        });
    }
示例#3
0
    //스코어 증가
    public void AddScore()
    {
        startGameButton.interactable = false;
        HTTPNetworkManager.Instance.AddScore(5, (response) =>
        {
            startGameButton.interactable = true;

            HTTPResponseInfo info = response.GetDataFromMessage <HTTPResponseInfo>();
            SetInfo(info.name, info.score);
        }, () =>
        {
            startGameButton.interactable = true;
        });
    }
    void GetInfo()
    {
        HTTPNetworkManager.Instance.Info((response) =>
        {
            string resultStr      = response.Message;
            HTTPResponseInfo info = response.GetDataFromMessage <HTTPResponseInfo>();

            SetInfo(info.name, info.score);
        }, () =>
        {
            nameText.text  = "";
            scoreText.text = "";
        });
    }
示例#5
0
    void GetInfo()
    {
        HTTPNetworkManager.Instance.Info((response) =>
        {
            Debug.Log(response);

            string resultStr      = response.Message;
            HTTPResponseInfo info = response.GetDataFromMessage <HTTPResponseInfo>();
            SetInfo(info.name, info.score);
        }, () =>
        {
            nameText.text  = "";
            scoreText.text = "";
        });
        //string sid = PlayerPrefs.GetString("sid", "");
        //if (sid.Equals(""))
        //{
        //    signInPanelManager.Show();
        //}
        //else
        //{
        //    HTTPNetworkManager.Instance.Info((response) =>
        //    {
        //        Debug.Log(response);

        //        string resultStr = response.Message;
        //        //HTTPResponseMessage infoStr = JsonUtility.FromJson<HTTPResponseMessage>(resultStr);
        //        //HTTPResponseMessage info = JsonUtility.FromJson<HTTPResponseMessage>(infoStr.message);
        //        HTTPResponseInfo info = response.GetDataFromMessage<HTTPResponseInfo>();
        //        SetInfo(info.name, info.score);
        //    }, () =>
        //    {
        //        nameText.text = "";
        //        scoreText.text = "";
        //    });
        //}
    }
    public void OnclickSignIn()
    {
        signInButton.interactable = false;
        signUpButton.interactable = false;

        //로그인
        HTTPNetworkManager.Instance.SIgnIn(usernameInputField.text, passwordInputField.text, (response) =>
        {
            //쿠키값이 있으면 세션ID저장
            if (response.Headers.ContainsKey("Set-Cookie"))
            {
                //signIn성공시 쿠키값 전달
                string cookie = response.Headers["Set-Cookie"];

                int firstIndex = cookie.IndexOf('=') + 1;
                int lastIndex  = cookie.IndexOf(';');

                string cookieValue = cookie.Substring(firstIndex, lastIndex - firstIndex);

                PlayerPrefs.SetString("sid", cookieValue);
            }

            //유저의 점수 표시
            //GameManager에게 GetInfo()를 호출하면서 유저이름과 스코어를 표시하는 방법이 있으나 이미 통신했는데 또 통신하는 비효율적인 상황이 생긴다.
            HTTPResponseInfo info = response.GetDataFromMessage <HTTPResponseInfo>();
            MainManager.Instance.SetInfo(info.name, info.score);

            //로그인창 닫기
            Hide();
        }, () =>
        {
            //TODO : 로그인창 흔들기
            signInButton.interactable = true;
            signUpButton.interactable = true;
        });
    }