IEnumerator AddUser()
    {
        //creates data to send
        C4NO.PlayerLoginInfo data = new C4NO.PlayerLoginInfo();
        data.Username = GameObject.Find("Name").GetComponent <Text>().text;
        data.Password = GameObject.Find("Password").GetComponent <Text>().text;

        //converts data to Json, and then to byte array
        string       classData = JsonUtility.ToJson(data);
        UTF8Encoding temp      = new UTF8Encoding();

        byte[] bytes = temp.GetBytes(classData);

        //prepares web request
        UnityWebRequest req = UnityWebRequest.Put(m_AddPlayerURL, bytes);

        req.SetRequestHeader("Content-Type", "application/json");
        ClientConnectionState = ConnectionState.ADDING_USER;

        //waits for answer
        yield return(req.SendWebRequest());

        //outcome
        if (req.isNetworkError || req.isHttpError)
        {
            Debug.Log(req.error);
            ClientConnectionState = ConnectionState.REJECTED;
        }
        else
        {
            ClientConnectionState = ConnectionState.USER_ADDED;
            //This worked. Encode retrieved player into internal player
        }
    }
    IEnumerator RetrieveUser()
    {
        //creates data to send
        C4NO.PlayerLoginInfo data = new C4NO.PlayerLoginInfo();
        data.Username = GameObject.Find("Name").GetComponent <InputField>().text;
        data.Password = GameObject.Find("Password").GetComponent <InputField>().text;

        //converts data to Json, and then to byte array
        string classData = JsonUtility.ToJson(data);

        Debug.Log(classData);
        UTF8Encoding temp = new UTF8Encoding();

        byte[] bytes = temp.GetBytes(classData);

        //prepares web request
        UnityWebRequest req = UnityWebRequest.Put(m_RetrievePlayerURL, bytes);

        req.SetRequestHeader("Content-Type", "application/json");
        ClientConnectionState = ConnectionState.FETCHING_USER;

        //waits for answer
        yield return(req.SendWebRequest());

        //outcome
        if (req.isNetworkError || req.isHttpError)
        {
            Debug.Log(req.error);
            ClientConnectionState = ConnectionState.REJECTED;
        }
        else
        {
            string result = "";
            if (req.isDone)
            {
                result = req.downloadHandler.text;
                Debug.Log(result);
                if (result == "Wrong Password")
                {
                    ClientConnectionState = ConnectionState.REJECTED;
                }
                else
                {
                    InnerClientScript.NetPlayer = JsonUtility.FromJson <C4NO.NetworkPlayer>(result);
                    ClientConnectionState       = ConnectionState.USER_FETCHED;
                    InnerClientScript.ConnectToServer();
                    ClientConnectionState = ConnectionState.CONNECTING;
                }
            }
        }
    }