using System.Collections; using System.Collections.Generic; using System.Net; using TMPro; using UnityEngine; using UnityEngine.Networking; using UnityEngine.SceneManagement; public class LoginManager : MonoBehaviour { [SerializeField] private TextMeshProUGUI _loginName; [SerializeField] private TextMeshProUGUI _loginPassword; [SerializeField] private TextMeshProUGUI _regName; [SerializeField] private TextMeshProUGUI _regEmail; [SerializeField] private TextMeshProUGUI _regPassword; [SerializeField] private TextMeshProUGUI _regPassword2; [SerializeField] private GameObject startPanel; [SerializeField] private GameObject loginPanel; [SerializeField] private GameObject regPanel; [System.Serializable] class TempID { public int id; } public void TryReg() { StartCoroutine(RegisterReq()); } public void TryLogin() { StartCoroutine(TryLoginReq()); } private IEnumerator RegisterReq() { string url = "http://localhost:3000/api/RegUser"; string fields = $@"{{ ""username"": ""{_regName.text}"", ""email"": ""{_regEmail.text}"", ""password"": ""{_regPassword.text}""}}"; using (UnityWebRequest www = UnityWebRequest.Put(url, fields)) { www.method = "POST"; www.SetRequestHeader("Content-Type", "application/json"); yield return www.SendWebRequest(); if (www.result != UnityWebRequest.Result.Success) { Debug.LogError(www.error); } else { string responseBody = www.downloadHandler.text; Debug.Log("Response: " + responseBody); } } } private IEnumerator TryLoginReq() { string url = "http://localhost:3000/api/TryLogin"; url += $"?login={_loginName.text}&password={_loginPassword.text}"; using (UnityWebRequest www = UnityWebRequest.Get(url)) { www.method = "GET"; www.SetRequestHeader("Content-Type", "application/json"); yield return www.SendWebRequest(); if (www.result != UnityWebRequest.Result.Success) { Debug.LogError(www.error); } else { string responseBody = www.downloadHandler.text; if (responseBody == "") { Debug.Log("NoCorrect"); } else { TempID tempID = JsonUtility.FromJson(responseBody); Debug.Log("Response: " + tempID.id); SceneManager.LoadScene("TempGameplay"); } } } } }