Format files

This commit is contained in:
Lncvrt committed 2025-08-28 14:26:56 -07:00
1 parent a6d8356864
commit 75e4867ae8
8 files changed
+1534 -1534

No files matched your search

+464 -464
View File
@@ -9,513 +9,513 @@ using UnityEngine.UI;
public class Account : MonoBehaviour public class Account : MonoBehaviour
{ {
public GameObject registerPanel; public GameObject registerPanel;
public Button registerPanelLoginBtn; public Button registerPanelLoginBtn;
public GameObject loginPanel; public GameObject loginPanel;
public Button loginPanelRegisterBtn; public Button loginPanelRegisterBtn;
public GameObject accountPanel; public GameObject accountPanel;
public Button backButton; public Button backButton;
public Button accountPanelSyncButton; public Button accountPanelSyncButton;
public Button accountPanelLogoutButton; public Button accountPanelLogoutButton;
public TMP_InputField registerPanelUsernameForm; public TMP_InputField registerPanelUsernameForm;
public TMP_InputField registerPanelEmailForm; public TMP_InputField registerPanelEmailForm;
public TMP_InputField registerPanelEmailConfirmForm; public TMP_InputField registerPanelEmailConfirmForm;
public TMP_InputField registerPanelPasswordForm; public TMP_InputField registerPanelPasswordForm;
public TMP_InputField registerPanelPasswordConfirmForm; public TMP_InputField registerPanelPasswordConfirmForm;
public TMP_InputField loginPanelUsernameForm; public TMP_InputField loginPanelUsernameForm;
public TMP_InputField loginPanelPasswordForm; public TMP_InputField loginPanelPasswordForm;
public TMP_Text registerPanelStatusText; public TMP_Text registerPanelStatusText;
public TMP_Text loginPanelStatusText; public TMP_Text loginPanelStatusText;
public TMP_Text accountPanelStatusText; public TMP_Text accountPanelStatusText;
public GameObject changeUsernamePanel; public GameObject changeUsernamePanel;
public TMP_Text changeUsernamePanelStatusText; public TMP_Text changeUsernamePanelStatusText;
public Button submitButton; public Button submitButton;
public Button changeUsernameButton; public Button changeUsernameButton;
public Button changePasswordButton; public Button changePasswordButton;
public GameObject changePasswordPanel; public GameObject changePasswordPanel;
public TMP_Text changePasswordStatusText; public TMP_Text changePasswordStatusText;
public TMP_Text changeUsernameStatusText; public TMP_Text changeUsernameStatusText;
public TMP_InputField changeUsernameCurrentForm; public TMP_InputField changeUsernameCurrentForm;
public TMP_InputField changeUsernameNewForm; public TMP_InputField changeUsernameNewForm;
public TMP_InputField changeUsernamePasswordForm; public TMP_InputField changeUsernamePasswordForm;
public TMP_InputField changePasswordCurrentUsernameForm; public TMP_InputField changePasswordCurrentUsernameForm;
public TMP_InputField changePasswordCurrentForm; public TMP_InputField changePasswordCurrentForm;
public TMP_InputField changePasswordNewForm; public TMP_InputField changePasswordNewForm;
private void Awake() private void Awake()
{ {
if (PlayerPrefs.HasKey("gameSession") && PlayerPrefs.HasKey("userID")) if (PlayerPrefs.HasKey("gameSession") && PlayerPrefs.HasKey("userID"))
{ {
SwitchScene(0); SwitchScene(0);
} }
else else
{ {
SwitchScene(1); SwitchScene(1);
} }
backButton.onClick.AddListener(BackToMenu); backButton.onClick.AddListener(BackToMenu);
registerPanelLoginBtn.onClick.AddListener(delegate registerPanelLoginBtn.onClick.AddListener(delegate
{ {
SwitchScene(2); SwitchScene(2);
}); });
submitButton.onClick.AddListener(ButtonSubmit); submitButton.onClick.AddListener(ButtonSubmit);
loginPanelRegisterBtn.onClick.AddListener(delegate loginPanelRegisterBtn.onClick.AddListener(delegate
{ {
SwitchScene(1); SwitchScene(1);
}); });
accountPanelSyncButton.onClick.AddListener(StartSyncAccount); accountPanelSyncButton.onClick.AddListener(StartSyncAccount);
accountPanelLogoutButton.onClick.AddListener(LogoutAccount); accountPanelLogoutButton.onClick.AddListener(LogoutAccount);
changeUsernameButton.onClick.AddListener(delegate changeUsernameButton.onClick.AddListener(delegate
{ {
SwitchScene(3); SwitchScene(3);
}); });
changePasswordButton.onClick.AddListener(delegate changePasswordButton.onClick.AddListener(delegate
{ {
SwitchScene(4); SwitchScene(4);
}); });
} }
private void BackToMenu() private void BackToMenu()
{ {
if (GetCurrentScene() == 3 || GetCurrentScene() == 4) if (GetCurrentScene() == 3 || GetCurrentScene() == 4)
{ {
SwitchScene(0); SwitchScene(0);
} }
else else
{ {
SceneManager.LoadScene("Menu"); SceneManager.LoadScene("Menu");
} }
} }
private int GetCurrentScene() private int GetCurrentScene()
{ {
if (accountPanel.activeSelf) if (accountPanel.activeSelf)
{ {
return 0; return 0;
} }
if (registerPanel.activeSelf) if (registerPanel.activeSelf)
{ {
return 1; return 1;
} }
if (loginPanel.activeSelf) if (loginPanel.activeSelf)
{ {
return 2; return 2;
} }
if (changeUsernamePanel.activeSelf) if (changeUsernamePanel.activeSelf)
{ {
return 3; return 3;
} }
if (changePasswordPanel.activeSelf) if (changePasswordPanel.activeSelf)
{ {
return 4; return 4;
} }
return -1; return -1;
} }
private void ButtonSubmit() private void ButtonSubmit()
{ {
if (GetCurrentScene() == 1) if (GetCurrentScene() == 1)
{ {
StartCoroutine(SubmitRegister()); StartCoroutine(SubmitRegister());
} }
else if (GetCurrentScene() == 2) else if (GetCurrentScene() == 2)
{ {
StartCoroutine(SubmitLogin()); StartCoroutine(SubmitLogin());
} }
else if (GetCurrentScene() == 3) else if (GetCurrentScene() == 3)
{ {
StartCoroutine(ChangeUsername()); StartCoroutine(ChangeUsername());
} }
else if (GetCurrentScene() == 4) else if (GetCurrentScene() == 4)
{ {
StartCoroutine(ChangePassword()); StartCoroutine(ChangePassword());
} }
} }
private void SwitchScene(int scene) private void SwitchScene(int scene)
{ {
ClearForms(); ClearForms();
backButton.transform.localPosition = new Vector3(0f, -165f, 0f); backButton.transform.localPosition = new Vector3(0f, -165f, 0f);
backButton.GetComponent<RectTransform>().sizeDelta = new Vector2(90f, 30f); backButton.GetComponent<RectTransform>().sizeDelta = new Vector2(90f, 30f);
submitButton.transform.localPosition = new Vector3(110f, -165f, 0f); submitButton.transform.localPosition = new Vector3(110f, -165f, 0f);
submitButton.gameObject.SetActive(value: true); submitButton.gameObject.SetActive(value: true);
accountPanel.SetActive(value: false); accountPanel.SetActive(value: false);
registerPanel.SetActive(value: false); registerPanel.SetActive(value: false);
loginPanel.SetActive(value: false); loginPanel.SetActive(value: false);
changeUsernamePanel.SetActive(value: false); changeUsernamePanel.SetActive(value: false);
changePasswordPanel.SetActive(value: false); changePasswordPanel.SetActive(value: false);
registerPanelStatusText.text = ""; registerPanelStatusText.text = "";
loginPanelStatusText.text = ""; loginPanelStatusText.text = "";
accountPanelStatusText.text = ""; accountPanelStatusText.text = "";
changeUsernamePanelStatusText.text = ""; changeUsernamePanelStatusText.text = "";
changePasswordStatusText.text = ""; changePasswordStatusText.text = "";
changeUsernameStatusText.text = ""; changeUsernameStatusText.text = "";
registerPanelStatusText.color = Color.white; registerPanelStatusText.color = Color.white;
loginPanelStatusText.color = Color.white; loginPanelStatusText.color = Color.white;
accountPanelStatusText.color = Color.white; accountPanelStatusText.color = Color.white;
changeUsernamePanelStatusText.color = Color.white; changeUsernamePanelStatusText.color = Color.white;
changePasswordStatusText.color = Color.white; changePasswordStatusText.color = Color.white;
changeUsernameStatusText.color = Color.white; changeUsernameStatusText.color = Color.white;
accountPanelSyncButton.interactable = true; accountPanelSyncButton.interactable = true;
switch (scene) switch (scene)
{ {
case 0: case 0:
accountPanel.SetActive(value: true); accountPanel.SetActive(value: true);
submitButton.gameObject.SetActive(value: false); submitButton.gameObject.SetActive(value: false);
backButton.transform.localPosition = new Vector3(-60f, -165f, 0f); backButton.transform.localPosition = new Vector3(-60f, -165f, 0f);
backButton.GetComponent<RectTransform>().sizeDelta = new Vector2(110f, 30f); backButton.GetComponent<RectTransform>().sizeDelta = new Vector2(110f, 30f);
break; break;
case 1: case 1:
registerPanel.SetActive(value: true); registerPanel.SetActive(value: true);
break; break;
case 2: case 2:
loginPanel.SetActive(value: true); loginPanel.SetActive(value: true);
break; break;
case 3: case 3:
changeUsernamePanel.SetActive(value: true); changeUsernamePanel.SetActive(value: true);
backButton.transform.localPosition = new Vector3(-60f, -165f, 0f); backButton.transform.localPosition = new Vector3(-60f, -165f, 0f);
backButton.GetComponent<RectTransform>().sizeDelta = new Vector2(110f, 30f); backButton.GetComponent<RectTransform>().sizeDelta = new Vector2(110f, 30f);
submitButton.transform.localPosition = new Vector3(60f, -165f, 0f); submitButton.transform.localPosition = new Vector3(60f, -165f, 0f);
break; break;
case 4: case 4:
changePasswordPanel.SetActive(value: true); changePasswordPanel.SetActive(value: true);
backButton.transform.localPosition = new Vector3(-60f, -165f, 0f); backButton.transform.localPosition = new Vector3(-60f, -165f, 0f);
backButton.GetComponent<RectTransform>().sizeDelta = new Vector2(110f, 30f); backButton.GetComponent<RectTransform>().sizeDelta = new Vector2(110f, 30f);
submitButton.transform.localPosition = new Vector3(60f, -165f, 0f); submitButton.transform.localPosition = new Vector3(60f, -165f, 0f);
break; break;
} }
} }
private IEnumerator SubmitRegister() private IEnumerator SubmitRegister()
{ {
if (!registerPanelEmailForm.text.Trim().Equals(registerPanelEmailConfirmForm.text.Trim(), StringComparison.OrdinalIgnoreCase)) if (!registerPanelEmailForm.text.Trim().Equals(registerPanelEmailConfirmForm.text.Trim(), StringComparison.OrdinalIgnoreCase))
{ {
UpdateStatusText(registerPanelStatusText, "Email doesn't match", Color.red); UpdateStatusText(registerPanelStatusText, "Email doesn't match", Color.red);
yield break; yield break;
} }
if (!registerPanelPasswordForm.text.Trim().Equals(registerPanelPasswordConfirmForm.text.Trim(), StringComparison.OrdinalIgnoreCase)) if (!registerPanelPasswordForm.text.Trim().Equals(registerPanelPasswordConfirmForm.text.Trim(), StringComparison.OrdinalIgnoreCase))
{ {
UpdateStatusText(registerPanelStatusText, "Password doesn't match", Color.red); UpdateStatusText(registerPanelStatusText, "Password doesn't match", Color.red);
yield break; yield break;
} }
if (!Regex.IsMatch(registerPanelUsernameForm.text, "^[a-zA-Z0-9]{3,16}$")) if (!Regex.IsMatch(registerPanelUsernameForm.text, "^[a-zA-Z0-9]{3,16}$"))
{ {
UpdateStatusText(registerPanelStatusText, "Username must be 3-16 characters, letters and numbers only", Color.red); UpdateStatusText(registerPanelStatusText, "Username must be 3-16 characters, letters and numbers only", Color.red);
yield break; yield break;
} }
WWWForm wWWForm = new WWWForm(); WWWForm wWWForm = new WWWForm();
wWWForm.AddField("username", registerPanelUsernameForm.text); wWWForm.AddField("username", registerPanelUsernameForm.text);
wWWForm.AddField("email", registerPanelEmailForm.text); wWWForm.AddField("email", registerPanelEmailForm.text);
wWWForm.AddField("password", registerPanelPasswordForm.text); wWWForm.AddField("password", registerPanelPasswordForm.text);
using UnityWebRequest request = UnityWebRequest.Post("https://berrydash.xytriza.com/database/registerAccount.php", wWWForm); using UnityWebRequest request = UnityWebRequest.Post("https://berrydash.xytriza.com/database/registerAccount.php", wWWForm);
request.SetRequestHeader("User-Agent", "BerryDashClient"); request.SetRequestHeader("User-Agent", "BerryDashClient");
request.SetRequestHeader("ClientVersion", PlayerPrefs.GetFloat("clientVersion").ToString()); request.SetRequestHeader("ClientVersion", PlayerPrefs.GetFloat("clientVersion").ToString());
yield return request.SendWebRequest(); yield return request.SendWebRequest();
if (request.result != UnityWebRequest.Result.Success) if (request.result != UnityWebRequest.Result.Success)
{ {
Debug.LogError("HTTP Error: " + request.error); Debug.LogError("HTTP Error: " + request.error);
UpdateStatusText(registerPanelStatusText, "Failed to make HTTP request", Color.red); UpdateStatusText(registerPanelStatusText, "Failed to make HTTP request", Color.red);
yield break; yield break;
} }
string text = request.downloadHandler.text; string text = request.downloadHandler.text;
Debug.Log(text); Debug.Log(text);
switch (text) switch (text)
{ {
case "1": case "1":
SwitchScene(2); SwitchScene(2);
break; break;
case "-1": case "-1":
UpdateStatusText(registerPanelStatusText, "Internal login server error", Color.red); UpdateStatusText(registerPanelStatusText, "Internal login server error", Color.red);
break; break;
case "-2": case "-2":
UpdateStatusText(registerPanelStatusText, "Incomplete form data", Color.red); UpdateStatusText(registerPanelStatusText, "Incomplete form data", Color.red);
break; break;
case "-3": case "-3":
UpdateStatusText(registerPanelStatusText, "Username not valid", Color.red); UpdateStatusText(registerPanelStatusText, "Username not valid", Color.red);
break; break;
case "-4": case "-4":
UpdateStatusText(registerPanelStatusText, "Email not valid", Color.red); UpdateStatusText(registerPanelStatusText, "Email not valid", Color.red);
break; break;
case "-5": case "-5":
UpdateStatusText(registerPanelStatusText, "Password must have 8 characters, one number and one letter", Color.red); UpdateStatusText(registerPanelStatusText, "Password must have 8 characters, one number and one letter", Color.red);
break; break;
case "-6": case "-6":
UpdateStatusText(registerPanelStatusText, "Username too long or short", Color.red); UpdateStatusText(registerPanelStatusText, "Username too long or short", Color.red);
break; break;
case "-7": case "-7":
UpdateStatusText(registerPanelStatusText, "Username must be 3-16 characters, letters and numbers only", Color.red); UpdateStatusText(registerPanelStatusText, "Username must be 3-16 characters, letters and numbers only", Color.red);
break; break;
case "-8": case "-8":
UpdateStatusText(registerPanelStatusText, "Username or email already exists", Color.red); UpdateStatusText(registerPanelStatusText, "Username or email already exists", Color.red);
break; break;
default: default:
UpdateStatusText(registerPanelStatusText, "Unknown server response \"" + text + "\"", Color.red); UpdateStatusText(registerPanelStatusText, "Unknown server response \"" + text + "\"", Color.red);
break; break;
} }
} }
private IEnumerator SubmitLogin() private IEnumerator SubmitLogin()
{ {
WWWForm wWWForm = new WWWForm(); WWWForm wWWForm = new WWWForm();
wWWForm.AddField("username", loginPanelUsernameForm.text); wWWForm.AddField("username", loginPanelUsernameForm.text);
wWWForm.AddField("password", loginPanelPasswordForm.text); wWWForm.AddField("password", loginPanelPasswordForm.text);
wWWForm.AddField("currentHighScore", PlayerPrefs.GetInt("HighScore", 0).ToString()); wWWForm.AddField("currentHighScore", PlayerPrefs.GetInt("HighScore", 0).ToString());
using UnityWebRequest request = UnityWebRequest.Post("https://berrydash.xytriza.com/database/loginAccount.php", wWWForm); using UnityWebRequest request = UnityWebRequest.Post("https://berrydash.xytriza.com/database/loginAccount.php", wWWForm);
request.SetRequestHeader("User-Agent", "BerryDashClient"); request.SetRequestHeader("User-Agent", "BerryDashClient");
request.SetRequestHeader("ClientVersion", PlayerPrefs.GetFloat("clientVersion").ToString()); request.SetRequestHeader("ClientVersion", PlayerPrefs.GetFloat("clientVersion").ToString());
yield return request.SendWebRequest(); yield return request.SendWebRequest();
if (request.result != UnityWebRequest.Result.Success) if (request.result != UnityWebRequest.Result.Success)
{ {
Debug.LogError("HTTP Error: " + request.error); Debug.LogError("HTTP Error: " + request.error);
UpdateStatusText(loginPanelStatusText, "Failed to make HTTP request", Color.red); UpdateStatusText(loginPanelStatusText, "Failed to make HTTP request", Color.red);
yield break; yield break;
} }
string text = request.downloadHandler.text; string text = request.downloadHandler.text;
Debug.Log(text); Debug.Log(text);
if (!(text == "-1")) if (!(text == "-1"))
{ {
if (text == "-2") if (text == "-2")
{ {
UpdateStatusText(loginPanelStatusText, "Incorrect username or password", Color.red); UpdateStatusText(loginPanelStatusText, "Incorrect username or password", Color.red);
} }
else if (Regex.IsMatch(text, "^[a-zA-Z0-9]{512}:\\d+:\\d+:\\d+:\\d+$")) else if (Regex.IsMatch(text, "^[a-zA-Z0-9]{512}:\\d+:\\d+:\\d+:\\d+$"))
{ {
string[] array = text.Split(':'); string[] array = text.Split(':');
string value = array[0]; string value = array[0];
int value2 = int.Parse(array[1]); int value2 = int.Parse(array[1]);
int value3 = int.Parse(array[2]); int value3 = int.Parse(array[2]);
int value4 = int.Parse(array[3]); int value4 = int.Parse(array[3]);
int value5 = int.Parse(array[4]); int value5 = int.Parse(array[4]);
PlayerPrefs.SetString("gameSession", value); PlayerPrefs.SetString("gameSession", value);
PlayerPrefs.SetInt("userID", value2); PlayerPrefs.SetInt("userID", value2);
PlayerPrefs.SetInt("HighScore", value3); PlayerPrefs.SetInt("HighScore", value3);
PlayerPrefs.SetInt("icon", value4); PlayerPrefs.SetInt("icon", value4);
PlayerPrefs.SetInt("overlay", value5); PlayerPrefs.SetInt("overlay", value5);
SwitchScene(0); SwitchScene(0);
UpdateStatusText(loginPanelStatusText, "", Color.red); UpdateStatusText(loginPanelStatusText, "", Color.red);
} }
else else
{ {
UpdateStatusText(loginPanelStatusText, "Unknown server response", Color.red); UpdateStatusText(loginPanelStatusText, "Unknown server response", Color.red);
} }
} }
else else
{ {
UpdateStatusText(loginPanelStatusText, "Internal login server error", Color.red); UpdateStatusText(loginPanelStatusText, "Internal login server error", Color.red);
} }
} }
private IEnumerator ChangeUsername() private IEnumerator ChangeUsername()
{ {
WWWForm wWWForm = new WWWForm(); WWWForm wWWForm = new WWWForm();
wWWForm.AddField("username", changeUsernameCurrentForm.text); wWWForm.AddField("username", changeUsernameCurrentForm.text);
wWWForm.AddField("currentPassword", changeUsernamePasswordForm.text); wWWForm.AddField("currentPassword", changeUsernamePasswordForm.text);
wWWForm.AddField("newUsername", changeUsernameNewForm.text); wWWForm.AddField("newUsername", changeUsernameNewForm.text);
using UnityWebRequest request = UnityWebRequest.Post("https://berrydash.xytriza.com/database/changeAccountUsername.php", wWWForm); using UnityWebRequest request = UnityWebRequest.Post("https://berrydash.xytriza.com/database/changeAccountUsername.php", wWWForm);
request.SetRequestHeader("User-Agent", "BerryDashClient"); request.SetRequestHeader("User-Agent", "BerryDashClient");
request.SetRequestHeader("ClientVersion", PlayerPrefs.GetFloat("clientVersion").ToString()); request.SetRequestHeader("ClientVersion", PlayerPrefs.GetFloat("clientVersion").ToString());
yield return request.SendWebRequest(); yield return request.SendWebRequest();
if (request.result != UnityWebRequest.Result.Success) if (request.result != UnityWebRequest.Result.Success)
{ {
Debug.LogError("HTTP Error: " + request.error); Debug.LogError("HTTP Error: " + request.error);
UpdateStatusText(changeUsernameStatusText, "Failed to make HTTP request", Color.red); UpdateStatusText(changeUsernameStatusText, "Failed to make HTTP request", Color.red);
yield break; yield break;
} }
string text = request.downloadHandler.text; string text = request.downloadHandler.text;
Debug.Log(text); Debug.Log(text);
switch (text) switch (text)
{ {
case "1": case "1":
SwitchScene(0); SwitchScene(0);
UpdateStatusText(accountPanelStatusText, "Username changed successfully", Color.green); UpdateStatusText(accountPanelStatusText, "Username changed successfully", Color.green);
break; break;
case "-1": case "-1":
UpdateStatusText(changeUsernameStatusText, "Internal login server error", Color.red); UpdateStatusText(changeUsernameStatusText, "Internal login server error", Color.red);
break; break;
case "-2": case "-2":
UpdateStatusText(changeUsernameStatusText, "New Username, Password, or old username is empty", Color.red); UpdateStatusText(changeUsernameStatusText, "New Username, Password, or old username is empty", Color.red);
break; break;
case "-3": case "-3":
UpdateStatusText(changeUsernameStatusText, "New Username contains invalid characters", Color.red); UpdateStatusText(changeUsernameStatusText, "New Username contains invalid characters", Color.red);
break; break;
case "-4": case "-4":
UpdateStatusText(changeUsernameStatusText, "New Username is too short or too long", Color.red); UpdateStatusText(changeUsernameStatusText, "New Username is too short or too long", Color.red);
break; break;
case "-5": case "-5":
UpdateStatusText(changeUsernameStatusText, "New Username does not match the required format", Color.red); UpdateStatusText(changeUsernameStatusText, "New Username does not match the required format", Color.red);
break; break;
case "-6": case "-6":
UpdateStatusText(changeUsernameStatusText, "Incorrect current password", Color.red); UpdateStatusText(changeUsernameStatusText, "Incorrect current password", Color.red);
break; break;
case "-7": case "-7":
UpdateStatusText(changeUsernameStatusText, "Current username is incorrect", Color.red); UpdateStatusText(changeUsernameStatusText, "Current username is incorrect", Color.red);
break; break;
case "-8": case "-8":
UpdateStatusText(changeUsernameStatusText, "New username already exists", Color.red); UpdateStatusText(changeUsernameStatusText, "New username already exists", Color.red);
break; break;
default: default:
UpdateStatusText(changeUsernameStatusText, "Unknown server response", Color.red); UpdateStatusText(changeUsernameStatusText, "Unknown server response", Color.red);
break; break;
} }
} }
private IEnumerator ChangePassword() private IEnumerator ChangePassword()
{ {
WWWForm wWWForm = new WWWForm(); WWWForm wWWForm = new WWWForm();
wWWForm.AddField("username", changePasswordCurrentUsernameForm.text); wWWForm.AddField("username", changePasswordCurrentUsernameForm.text);
wWWForm.AddField("currentPassword", changePasswordCurrentForm.text); wWWForm.AddField("currentPassword", changePasswordCurrentForm.text);
wWWForm.AddField("newPassword", changePasswordNewForm.text); wWWForm.AddField("newPassword", changePasswordNewForm.text);
using UnityWebRequest request = UnityWebRequest.Post("https://berrydash.xytriza.com/database/changeAccountPassword.php", wWWForm); using UnityWebRequest request = UnityWebRequest.Post("https://berrydash.xytriza.com/database/changeAccountPassword.php", wWWForm);
request.SetRequestHeader("User-Agent", "BerryDashClient"); request.SetRequestHeader("User-Agent", "BerryDashClient");
request.SetRequestHeader("ClientVersion", PlayerPrefs.GetFloat("clientVersion").ToString()); request.SetRequestHeader("ClientVersion", PlayerPrefs.GetFloat("clientVersion").ToString());
yield return request.SendWebRequest(); yield return request.SendWebRequest();
if (request.result != UnityWebRequest.Result.Success) if (request.result != UnityWebRequest.Result.Success)
{ {
Debug.LogError("HTTP Error: " + request.error); Debug.LogError("HTTP Error: " + request.error);
UpdateStatusText(changePasswordStatusText, "Failed to make HTTP request", Color.red); UpdateStatusText(changePasswordStatusText, "Failed to make HTTP request", Color.red);
yield break; yield break;
} }
string text = request.downloadHandler.text; string text = request.downloadHandler.text;
Debug.Log(text); Debug.Log(text);
switch (text) switch (text)
{ {
case "-1": case "-1":
UpdateStatusText(changePasswordStatusText, "Internal login server error", Color.red); UpdateStatusText(changePasswordStatusText, "Internal login server error", Color.red);
yield break; yield break;
case "-2": case "-2":
UpdateStatusText(changePasswordStatusText, "New Password, Password, or username is empty", Color.red); UpdateStatusText(changePasswordStatusText, "New Password, Password, or username is empty", Color.red);
yield break; yield break;
case "-3": case "-3":
UpdateStatusText(changePasswordStatusText, "New Password is too short or too long", Color.red); UpdateStatusText(changePasswordStatusText, "New Password is too short or too long", Color.red);
yield break; yield break;
case "-4": case "-4":
UpdateStatusText(changePasswordStatusText, "Username must be 3-16 characters, letters and numbers only", Color.red); UpdateStatusText(changePasswordStatusText, "Username must be 3-16 characters, letters and numbers only", Color.red);
yield break; yield break;
case "-5": case "-5":
UpdateStatusText(changePasswordStatusText, "Incorrect current password", Color.red); UpdateStatusText(changePasswordStatusText, "Incorrect current password", Color.red);
yield break; yield break;
case "-6": case "-6":
UpdateStatusText(changePasswordStatusText, "Current username is incorrect", Color.red); UpdateStatusText(changePasswordStatusText, "Current username is incorrect", Color.red);
yield break; yield break;
case "-7": case "-7":
UpdateStatusText(changePasswordStatusText, "New password cannot be the same as your old password", Color.red); UpdateStatusText(changePasswordStatusText, "New password cannot be the same as your old password", Color.red);
yield break; yield break;
} }
if (Regex.IsMatch(text, "^[a-zA-Z0-9]{512}$")) if (Regex.IsMatch(text, "^[a-zA-Z0-9]{512}$"))
{ {
PlayerPrefs.SetString("gameSession", text); PlayerPrefs.SetString("gameSession", text);
SwitchScene(0); SwitchScene(0);
UpdateStatusText(accountPanelStatusText, "Password changed successfully", Color.green); UpdateStatusText(accountPanelStatusText, "Password changed successfully", Color.green);
} }
else else
{ {
UpdateStatusText(accountPanelStatusText, "Unknown server response", Color.red); UpdateStatusText(accountPanelStatusText, "Unknown server response", Color.red);
} }
} }
private void ClearForms() private void ClearForms()
{ {
registerPanelUsernameForm.text = ""; registerPanelUsernameForm.text = "";
registerPanelEmailForm.text = ""; registerPanelEmailForm.text = "";
registerPanelEmailConfirmForm.text = ""; registerPanelEmailConfirmForm.text = "";
registerPanelPasswordForm.text = ""; registerPanelPasswordForm.text = "";
registerPanelPasswordConfirmForm.text = ""; registerPanelPasswordConfirmForm.text = "";
loginPanelUsernameForm.text = ""; loginPanelUsernameForm.text = "";
loginPanelPasswordForm.text = ""; loginPanelPasswordForm.text = "";
changeUsernameNewForm.text = ""; changeUsernameNewForm.text = "";
changeUsernamePasswordForm.text = ""; changeUsernamePasswordForm.text = "";
changePasswordCurrentForm.text = ""; changePasswordCurrentForm.text = "";
changePasswordNewForm.text = ""; changePasswordNewForm.text = "";
changePasswordCurrentUsernameForm.text = ""; changePasswordCurrentUsernameForm.text = "";
changeUsernameCurrentForm.text = ""; changeUsernameCurrentForm.text = "";
} }
private IEnumerator SyncAccount() private IEnumerator SyncAccount()
{ {
WWWForm wWWForm = new WWWForm(); WWWForm wWWForm = new WWWForm();
wWWForm.AddField("userID", PlayerPrefs.GetInt("userID", 0).ToString()); wWWForm.AddField("userID", PlayerPrefs.GetInt("userID", 0).ToString());
wWWForm.AddField("gameSession", PlayerPrefs.GetString("gameSession", "")); wWWForm.AddField("gameSession", PlayerPrefs.GetString("gameSession", ""));
wWWForm.AddField("highScore", PlayerPrefs.GetInt("HighScore", 0).ToString()); wWWForm.AddField("highScore", PlayerPrefs.GetInt("HighScore", 0).ToString());
wWWForm.AddField("icon", PlayerPrefs.GetInt("icon", 1).ToString()); wWWForm.AddField("icon", PlayerPrefs.GetInt("icon", 1).ToString());
wWWForm.AddField("overlay", PlayerPrefs.GetInt("overlay", 0).ToString()); wWWForm.AddField("overlay", PlayerPrefs.GetInt("overlay", 0).ToString());
using UnityWebRequest request = UnityWebRequest.Post("https://berrydash.xytriza.com/database/syncAccount.php", wWWForm); using UnityWebRequest request = UnityWebRequest.Post("https://berrydash.xytriza.com/database/syncAccount.php", wWWForm);
request.SetRequestHeader("User-Agent", "BerryDashClient"); request.SetRequestHeader("User-Agent", "BerryDashClient");
request.SetRequestHeader("ClientVersion", PlayerPrefs.GetFloat("clientVersion").ToString()); request.SetRequestHeader("ClientVersion", PlayerPrefs.GetFloat("clientVersion").ToString());
yield return request.SendWebRequest(); yield return request.SendWebRequest();
if (request.result != UnityWebRequest.Result.Success) if (request.result != UnityWebRequest.Result.Success)
{ {
Debug.LogError("HTTP Error: " + request.error); Debug.LogError("HTTP Error: " + request.error);
UpdateStatusText(accountPanelStatusText, "Failed to make HTTP request", Color.red); UpdateStatusText(accountPanelStatusText, "Failed to make HTTP request", Color.red);
yield break; yield break;
} }
string text = request.downloadHandler.text; string text = request.downloadHandler.text;
Debug.Log(text); Debug.Log(text);
switch (text) switch (text)
{ {
case "1": case "1":
accountPanelSyncButton.interactable = false; accountPanelSyncButton.interactable = false;
UpdateStatusText(accountPanelStatusText, "Synced account", Color.green); UpdateStatusText(accountPanelStatusText, "Synced account", Color.green);
break; break;
case "-1": case "-1":
UpdateStatusText(accountPanelStatusText, "Internal login server error", Color.red); UpdateStatusText(accountPanelStatusText, "Internal login server error", Color.red);
break; break;
case "-2": case "-2":
LogoutAccount(); LogoutAccount();
break; break;
default: default:
UpdateStatusText(accountPanelStatusText, "Unknown server response \"" + text + "\"", Color.red); UpdateStatusText(accountPanelStatusText, "Unknown server response \"" + text + "\"", Color.red);
break; break;
} }
} }
private void StartSyncAccount() private void StartSyncAccount()
{ {
StartCoroutine(SyncAccount()); StartCoroutine(SyncAccount());
} }
private void LogoutAccount() private void LogoutAccount()
{ {
PlayerPrefs.DeleteKey("userID"); PlayerPrefs.DeleteKey("userID");
PlayerPrefs.DeleteKey("gameSession"); PlayerPrefs.DeleteKey("gameSession");
PlayerPrefs.SetInt("HighScore", 0); PlayerPrefs.SetInt("HighScore", 0);
PlayerPrefs.SetInt("icon", 1); PlayerPrefs.SetInt("icon", 1);
PlayerPrefs.SetInt("overlay", 0); PlayerPrefs.SetInt("overlay", 0);
SwitchScene(1); SwitchScene(1);
} }
private void UpdateStatusText(TMP_Text text, string message, Color color) private void UpdateStatusText(TMP_Text text, string message, Color color)
{ {
text.text = message; text.text = message;
text.color = color; text.color = color;
} }
} }
+591 -591
View File
File diff suppressed because it is too large. Load diff
+171 -171
View File
@@ -5,206 +5,206 @@ using UnityEngine.UI;
public class Iconkit : MonoBehaviour public class Iconkit : MonoBehaviour
{ {
public GameObject panel; public GameObject panel;
public GameObject iconSelectionPanel; public GameObject iconSelectionPanel;
public GameObject overlaySelectionPanel; public GameObject overlaySelectionPanel;
public Button backButton; public Button backButton;
public Image defaultIcon; public Image defaultIcon;
public Button placeholderButton; public Button placeholderButton;
public TMP_Text selectionText; public TMP_Text selectionText;
public Image previewBird; public Image previewBird;
public Image previewOverlay; public Image previewOverlay;
public Image overlay0; public Image overlay0;
public Image overlay1; public Image overlay1;
public Image overlay2; public Image overlay2;
public Image overlay3; public Image overlay3;
public Image overlay4; public Image overlay4;
public Image overlay5; public Image overlay5;
public Image overlay6; public Image overlay6;
public Image overlay7; public Image overlay7;
public Image overlay8; public Image overlay8;
public Image overlay9; public Image overlay9;
public Image icon1; public Image icon1;
public Image icon2; public Image icon2;
public Image icon3; public Image icon3;
public Image icon4; public Image icon4;
public GameObject previewBirdObject; public GameObject previewBirdObject;
private void Start() private void Start()
{ {
SwitchToIcon(); SwitchToIcon();
SelectOverlay(PlayerPrefs.GetInt("overlay", Mathf.Clamp(PlayerPrefs.GetInt("overlay", 0), 0, 9))); SelectOverlay(PlayerPrefs.GetInt("overlay", Mathf.Clamp(PlayerPrefs.GetInt("overlay", 0), 0, 9)));
SelectIcon(PlayerPrefs.GetInt("icon", Mathf.Clamp(PlayerPrefs.GetInt("icon", 0), 1, 4))); SelectIcon(PlayerPrefs.GetInt("icon", Mathf.Clamp(PlayerPrefs.GetInt("icon", 0), 1, 4)));
if (PlayerPrefs.GetInt("userID", 0) == 1) if (PlayerPrefs.GetInt("userID", 0) == 1)
{ {
defaultIcon.sprite = Resources.Load<Sprite>("icons/icons/bird_-1"); defaultIcon.sprite = Resources.Load<Sprite>("icons/icons/bird_-1");
} }
else if (PlayerPrefs.GetInt("userID", 0) == 2) else if (PlayerPrefs.GetInt("userID", 0) == 2)
{ {
defaultIcon.sprite = Resources.Load<Sprite>("icons/icons/bird_-2"); defaultIcon.sprite = Resources.Load<Sprite>("icons/icons/bird_-2");
} }
else if (PlayerPrefs.GetInt("userID", 0) == 4) else if (PlayerPrefs.GetInt("userID", 0) == 4)
{ {
defaultIcon.sprite = Resources.Load<Sprite>("icons/icons/bird_-3"); defaultIcon.sprite = Resources.Load<Sprite>("icons/icons/bird_-3");
} }
placeholderButton.onClick.AddListener(ToggleKit); placeholderButton.onClick.AddListener(ToggleKit);
backButton.onClick.AddListener(delegate backButton.onClick.AddListener(delegate
{ {
PlayerPrefs.SetInt("icon", Mathf.Clamp(PlayerPrefs.GetInt("icon", 0), 1, 4)); PlayerPrefs.SetInt("icon", Mathf.Clamp(PlayerPrefs.GetInt("icon", 0), 1, 4));
PlayerPrefs.SetInt("overlay", Mathf.Clamp(PlayerPrefs.GetInt("overlay", 0), 0, 9)); PlayerPrefs.SetInt("overlay", Mathf.Clamp(PlayerPrefs.GetInt("overlay", 0), 0, 9));
PlayerPrefs.Save(); PlayerPrefs.Save();
SceneManager.LoadScene("Menu"); SceneManager.LoadScene("Menu");
}); });
} }
private void Update() private void Update()
{ {
if (!Input.GetMouseButtonDown(0)) if (!Input.GetMouseButtonDown(0))
{ {
return; return;
} }
Vector2 screenPoint = Input.mousePosition; Vector2 screenPoint = Input.mousePosition;
Image[] array = new Image[10] { overlay0, overlay1, overlay2, overlay3, overlay4, overlay5, overlay6, overlay7, overlay8, overlay9 }; Image[] array = new Image[10] { overlay0, overlay1, overlay2, overlay3, overlay4, overlay5, overlay6, overlay7, overlay8, overlay9 };
Image[] array2 = new Image[4] { icon1, icon2, icon3, icon4 }; Image[] array2 = new Image[4] { icon1, icon2, icon3, icon4 };
for (int i = 0; i < array.Length; i++) for (int i = 0; i < array.Length; i++)
{ {
if (RectTransformUtility.RectangleContainsScreenPoint(array[i].rectTransform, screenPoint) && array[i].IsActive()) if (RectTransformUtility.RectangleContainsScreenPoint(array[i].rectTransform, screenPoint) && array[i].IsActive())
{ {
SelectOverlay(i); SelectOverlay(i);
break; break;
} }
} }
for (int j = 0; j < array2.Length; j++) for (int j = 0; j < array2.Length; j++)
{ {
if (RectTransformUtility.RectangleContainsScreenPoint(array2[j].rectTransform, screenPoint) && array2[j].IsActive()) if (RectTransformUtility.RectangleContainsScreenPoint(array2[j].rectTransform, screenPoint) && array2[j].IsActive())
{ {
SelectIcon(j + 1); SelectIcon(j + 1);
break; break;
} }
} }
if (RectTransformUtility.RectangleContainsScreenPoint(previewBirdObject.GetComponent<RectTransform>(), screenPoint)) if (RectTransformUtility.RectangleContainsScreenPoint(previewBirdObject.GetComponent<RectTransform>(), screenPoint))
{ {
float x = previewBirdObject.transform.localScale.x; float x = previewBirdObject.transform.localScale.x;
previewBirdObject.transform.localScale = new Vector3((x != 1f) ? 1 : (-1), 1f, 1f); previewBirdObject.transform.localScale = new Vector3((x != 1f) ? 1 : (-1), 1f, 1f);
} }
} }
private void SwitchToIcon() private void SwitchToIcon()
{ {
iconSelectionPanel.SetActive(value: true); iconSelectionPanel.SetActive(value: true);
overlaySelectionPanel.SetActive(value: false); overlaySelectionPanel.SetActive(value: false);
selectionText.text = "Icon selection"; selectionText.text = "Icon selection";
placeholderButton.GetComponentInChildren<TMP_Text>().text = "Overlays"; placeholderButton.GetComponentInChildren<TMP_Text>().text = "Overlays";
} }
private void SwitchToOverlay() private void SwitchToOverlay()
{ {
iconSelectionPanel.SetActive(value: false); iconSelectionPanel.SetActive(value: false);
overlaySelectionPanel.SetActive(value: true); overlaySelectionPanel.SetActive(value: true);
selectionText.text = "Overlay selection"; selectionText.text = "Overlay selection";
placeholderButton.GetComponentInChildren<TMP_Text>().text = "Icons"; placeholderButton.GetComponentInChildren<TMP_Text>().text = "Icons";
} }
private void ToggleKit() private void ToggleKit()
{ {
if (GetCurrentKit() == 1) if (GetCurrentKit() == 1)
{ {
SwitchToOverlay(); SwitchToOverlay();
} }
else if (GetCurrentKit() == 2) else if (GetCurrentKit() == 2)
{ {
SwitchToIcon(); SwitchToIcon();
} }
} }
private int GetCurrentKit() private int GetCurrentKit()
{ {
if (iconSelectionPanel.activeSelf) if (iconSelectionPanel.activeSelf)
{ {
return 1; return 1;
} }
if (overlaySelectionPanel.activeSelf) if (overlaySelectionPanel.activeSelf)
{ {
return 2; return 2;
} }
return 0; return 0;
} }
private void SelectIcon(int iconID) private void SelectIcon(int iconID)
{ {
PlayerPrefs.SetInt("icon", iconID); PlayerPrefs.SetInt("icon", iconID);
Image[] array = new Image[4] { icon1, icon2, icon3, icon4 }; Image[] array = new Image[4] { icon1, icon2, icon3, icon4 };
Color32 color = new Color32(70, 70, 70, byte.MaxValue); Color32 color = new Color32(70, 70, 70, byte.MaxValue);
Color32 color2 = new Color32(100, 100, 100, byte.MaxValue); Color32 color2 = new Color32(100, 100, 100, byte.MaxValue);
for (int i = 0; i < array.Length; i++) for (int i = 0; i < array.Length; i++)
{ {
array[i].color = ((iconID == i + 1) ? color : color2); array[i].color = ((iconID == i + 1) ? color : color2);
} }
previewBird.sprite = Resources.Load<Sprite>("icons/icons/bird_" + iconID); previewBird.sprite = Resources.Load<Sprite>("icons/icons/bird_" + iconID);
if (iconID == 1) if (iconID == 1)
{ {
if (PlayerPrefs.GetInt("userID", 0) == 1) if (PlayerPrefs.GetInt("userID", 0) == 1)
{ {
previewBird.sprite = Resources.Load<Sprite>("icons/icons/bird_-1"); previewBird.sprite = Resources.Load<Sprite>("icons/icons/bird_-1");
} }
else if (PlayerPrefs.GetInt("userID", 0) == 2) else if (PlayerPrefs.GetInt("userID", 0) == 2)
{ {
previewBird.sprite = Resources.Load<Sprite>("icons/icons/bird_-2"); previewBird.sprite = Resources.Load<Sprite>("icons/icons/bird_-2");
} }
else if (PlayerPrefs.GetInt("userID", 0) == 4) else if (PlayerPrefs.GetInt("userID", 0) == 4)
{ {
previewBird.sprite = Resources.Load<Sprite>("icons/icons/bird_-3"); previewBird.sprite = Resources.Load<Sprite>("icons/icons/bird_-3");
} }
} }
} }
private void SelectOverlay(int overlayID) private void SelectOverlay(int overlayID)
{ {
PlayerPrefs.SetInt("overlay", overlayID); PlayerPrefs.SetInt("overlay", overlayID);
Image[] array = new Image[10] { overlay0, overlay1, overlay2, overlay3, overlay4, overlay5, overlay6, overlay7, overlay8, overlay9 }; Image[] array = new Image[10] { overlay0, overlay1, overlay2, overlay3, overlay4, overlay5, overlay6, overlay7, overlay8, overlay9 };
Color32 color = new Color32(70, 70, 70, byte.MaxValue); Color32 color = new Color32(70, 70, 70, byte.MaxValue);
Color32 color2 = new Color32(100, 100, 100, byte.MaxValue); Color32 color2 = new Color32(100, 100, 100, byte.MaxValue);
for (int i = 0; i < array.Length; i++) for (int i = 0; i < array.Length; i++)
{ {
array[i].color = ((overlayID == i) ? color : color2); array[i].color = ((overlayID == i) ? color : color2);
} }
previewOverlay.rectTransform.localPosition = new Vector3(-19f, 28f, 0f); previewOverlay.rectTransform.localPosition = new Vector3(-19f, 28f, 0f);
previewOverlay.gameObject.SetActive(value: true); previewOverlay.gameObject.SetActive(value: true);
if (overlayID == 8) if (overlayID == 8)
{ {
previewOverlay.rectTransform.localPosition = new Vector3(-22f, 20f, 0f); previewOverlay.rectTransform.localPosition = new Vector3(-22f, 20f, 0f);
} }
if (overlayID == 0) if (overlayID == 0)
{ {
previewOverlay.gameObject.SetActive(value: false); previewOverlay.gameObject.SetActive(value: false);
previewOverlay.sprite = null; previewOverlay.sprite = null;
} }
else else
{ {
previewOverlay.sprite = Resources.Load<Sprite>("icons/overlays/overlay_" + overlayID); previewOverlay.sprite = Resources.Load<Sprite>("icons/overlays/overlay_" + overlayID);
} }
} }
} }
+143 -143
View File
@@ -8,158 +8,158 @@ using UnityEngine.UI;
public class Leaderboard : MonoBehaviour public class Leaderboard : MonoBehaviour
{ {
public Canvas canvas; public Canvas canvas;
public ScrollRect scrollRect; public ScrollRect scrollRect;
public GameObject content; public GameObject content;
public TMP_Dropdown showAmount; public TMP_Dropdown showAmount;
public TMP_Text statusText; public TMP_Text statusText;
public TMP_FontAsset font; public TMP_FontAsset font;
public Button backButton; public Button backButton;
public Button refreshButton; public Button refreshButton;
private void Awake() private void Awake()
{ {
scrollRect.normalizedPosition = new Vector2(0f, 1f); scrollRect.normalizedPosition = new Vector2(0f, 1f);
UpdateStatus(enabled: true, "Loading..."); UpdateStatus(enabled: true, "Loading...");
StartCoroutine(GetTopPlayers(0)); StartCoroutine(GetTopPlayers(0));
showAmount.onValueChanged.AddListener(delegate(int value) showAmount.onValueChanged.AddListener(delegate (int value)
{ {
StartCoroutine(RefreshLeaderboard(value)); StartCoroutine(RefreshLeaderboard(value));
}); });
backButton.onClick.AddListener(delegate backButton.onClick.AddListener(delegate
{ {
SceneManager.LoadScene("Menu"); SceneManager.LoadScene("Menu");
}); });
refreshButton.onClick.AddListener(delegate refreshButton.onClick.AddListener(delegate
{ {
StartCoroutine(RefreshLeaderboard(showAmount.value)); StartCoroutine(RefreshLeaderboard(showAmount.value));
}); });
} }
private IEnumerator RefreshLeaderboard(int value) private IEnumerator RefreshLeaderboard(int value)
{ {
int childCount = content.transform.childCount; int childCount = content.transform.childCount;
GameObject[] entries = new GameObject[childCount]; GameObject[] entries = new GameObject[childCount];
for (int i = 0; i < childCount; i++) for (int i = 0; i < childCount; i++)
{ {
entries[i] = content.transform.GetChild(i).gameObject; entries[i] = content.transform.GetChild(i).gameObject;
} }
yield return StartCoroutine(GetTopPlayers(value)); yield return StartCoroutine(GetTopPlayers(value));
for (int j = 0; j < entries.Length; j++) for (int j = 0; j < entries.Length; j++)
{ {
UnityEngine.Object.Destroy(entries[j]); UnityEngine.Object.Destroy(entries[j]);
} }
} }
private IEnumerator GetTopPlayers(int showAmount) private IEnumerator GetTopPlayers(int showAmount)
{ {
Debug.Log(showAmount); Debug.Log(showAmount);
WWWForm wWWForm = new WWWForm(); WWWForm wWWForm = new WWWForm();
wWWForm.AddField("showAmount", showAmount); wWWForm.AddField("showAmount", showAmount);
UnityWebRequest request = UnityWebRequest.Post("https://berrydash.lncvrt.xyz/database/getTopPlayers.php", wWWForm); UnityWebRequest request = UnityWebRequest.Post("https://berrydash.lncvrt.xyz/database/getTopPlayers.php", wWWForm);
request.SetRequestHeader("Requester", "BerryDashClient"); request.SetRequestHeader("Requester", "BerryDashClient");
request.SetRequestHeader("ClientVersion", "1.3-beta2"); request.SetRequestHeader("ClientVersion", "1.3-beta2");
request.SetRequestHeader("ClientPlatform", Application.platform.ToString()); request.SetRequestHeader("ClientPlatform", Application.platform.ToString());
yield return request.SendWebRequest(); yield return request.SendWebRequest();
if (request.result == UnityWebRequest.Result.Success) if (request.result == UnityWebRequest.Result.Success)
{ {
UpdateStatus(); UpdateStatus();
string text = request.downloadHandler.text; string text = request.downloadHandler.text;
Debug.Log(text); Debug.Log(text);
string[] array = text.Split(new char[1] { ':' }, StringSplitOptions.RemoveEmptyEntries); string[] array = text.Split(new char[1] { ':' }, StringSplitOptions.RemoveEmptyEntries);
int num = array.Length / 5; int num = array.Length / 5;
float num2 = 40f; float num2 = 40f;
float num3 = 10f; float num3 = 10f;
float num4 = content.GetComponent<RectTransform>().rect.height / 2f; float num4 = content.GetComponent<RectTransform>().rect.height / 2f;
for (int i = 0; i < num; i++) for (int i = 0; i < num; i++)
{ {
GameObject gameObject = new GameObject("Entry_" + i, typeof(RectTransform), typeof(CanvasRenderer)); GameObject gameObject = new GameObject("Entry_" + i, typeof(RectTransform), typeof(CanvasRenderer));
RectTransform component = gameObject.GetComponent<RectTransform>(); RectTransform component = gameObject.GetComponent<RectTransform>();
component.sizeDelta = new Vector2(600f, num2); component.sizeDelta = new Vector2(600f, num2);
component.anchoredPosition = new Vector2(0f, num4 - (float)i * (num2 + num3)); component.anchoredPosition = new Vector2(0f, num4 - (float)i * (num2 + num3));
component.anchorMin = new Vector2(0.5f, 1f); component.anchorMin = new Vector2(0.5f, 1f);
component.anchorMax = new Vector2(0.5f, 1f); component.anchorMax = new Vector2(0.5f, 1f);
component.pivot = new Vector2(0.5f, 1f); component.pivot = new Vector2(0.5f, 1f);
GameObject gameObject2 = new GameObject("PlayerName", typeof(RectTransform), typeof(TextMeshProUGUI)); GameObject gameObject2 = new GameObject("PlayerName", typeof(RectTransform), typeof(TextMeshProUGUI));
GameObject gameObject3 = new GameObject("PlayerIcon", typeof(RectTransform), typeof(Image)); GameObject gameObject3 = new GameObject("PlayerIcon", typeof(RectTransform), typeof(Image));
GameObject gameObject4 = new GameObject("PlayerIconOverlay", typeof(RectTransform), typeof(Image)); GameObject gameObject4 = new GameObject("PlayerIconOverlay", typeof(RectTransform), typeof(Image));
GameObject obj = new GameObject("Score", typeof(RectTransform), typeof(TextMeshProUGUI)); GameObject obj = new GameObject("Score", typeof(RectTransform), typeof(TextMeshProUGUI));
gameObject2.transform.SetParent(gameObject.transform, worldPositionStays: false); gameObject2.transform.SetParent(gameObject.transform, worldPositionStays: false);
gameObject3.transform.SetParent(gameObject2.transform, worldPositionStays: false); gameObject3.transform.SetParent(gameObject2.transform, worldPositionStays: false);
gameObject4.transform.SetParent(gameObject3.transform, worldPositionStays: false); gameObject4.transform.SetParent(gameObject3.transform, worldPositionStays: false);
obj.transform.SetParent(gameObject.transform, worldPositionStays: false); obj.transform.SetParent(gameObject.transform, worldPositionStays: false);
Image component2 = gameObject3.GetComponent<Image>(); Image component2 = gameObject3.GetComponent<Image>();
component2.sprite = Resources.Load<Sprite>("icons/icons/bird_" + array[i * 5 + 2]); component2.sprite = Resources.Load<Sprite>("icons/icons/bird_" + array[i * 5 + 2]);
if (array[i * 5 + 2] == "1") if (array[i * 5 + 2] == "1")
{ {
if (array[i * 5 + 4] == "1") if (array[i * 5 + 4] == "1")
{ {
component2.sprite = Resources.Load<Sprite>("icons/icons/bird_-1"); component2.sprite = Resources.Load<Sprite>("icons/icons/bird_-1");
} }
else if (array[i * 5 + 4] == "2") else if (array[i * 5 + 4] == "2")
{ {
component2.sprite = Resources.Load<Sprite>("icons/icons/bird_-2"); component2.sprite = Resources.Load<Sprite>("icons/icons/bird_-2");
} }
else if (array[i * 5 + 4] == "4") else if (array[i * 5 + 4] == "4")
{ {
component2.sprite = Resources.Load<Sprite>("icons/icons/bird_-3"); component2.sprite = Resources.Load<Sprite>("icons/icons/bird_-3");
} }
} }
component2.rectTransform.sizeDelta = new Vector2(30f, 30f); component2.rectTransform.sizeDelta = new Vector2(30f, 30f);
component2.rectTransform.localScale = new Vector3(-1f, 1f, 1f); component2.rectTransform.localScale = new Vector3(-1f, 1f, 1f);
component2.rectTransform.anchoredPosition = new Vector2(-125f, 0f); component2.rectTransform.anchoredPosition = new Vector2(-125f, 0f);
Image component3 = gameObject4.GetComponent<Image>(); Image component3 = gameObject4.GetComponent<Image>();
if (array[i * 5 + 3] == "0") if (array[i * 5 + 3] == "0")
{ {
gameObject4.SetActive(value: false); gameObject4.SetActive(value: false);
} }
if (array[i * 5 + 3] == "8") if (array[i * 5 + 3] == "8")
{ {
component3.rectTransform.anchoredPosition = new Vector2(-8.25f, 7.5f); component3.rectTransform.anchoredPosition = new Vector2(-8.25f, 7.5f);
} }
else else
{ {
component3.rectTransform.anchoredPosition = new Vector2(-7.125f, 10.5f); component3.rectTransform.anchoredPosition = new Vector2(-7.125f, 10.5f);
} }
component3.rectTransform.sizeDelta = new Vector2(13.125f, 5.625f); component3.rectTransform.sizeDelta = new Vector2(13.125f, 5.625f);
component3.sprite = Resources.Load<Sprite>("icons/overlays/overlay_" + array[i * 5 + 3]); component3.sprite = Resources.Load<Sprite>("icons/overlays/overlay_" + array[i * 5 + 3]);
TextMeshProUGUI component4 = gameObject2.GetComponent<TextMeshProUGUI>(); TextMeshProUGUI component4 = gameObject2.GetComponent<TextMeshProUGUI>();
component4.text = array[i * 5] + " (#" + (i + 1) + ")"; component4.text = array[i * 5] + " (#" + (i + 1) + ")";
component4.font = font; component4.font = font;
component4.fontSize = 14f; component4.fontSize = 14f;
component4.alignment = TextAlignmentOptions.Left; component4.alignment = TextAlignmentOptions.Left;
component4.rectTransform.sizeDelta = new Vector2(200f, 75f); component4.rectTransform.sizeDelta = new Vector2(200f, 75f);
component4.rectTransform.anchoredPosition = new Vector2(-35f, 0f); component4.rectTransform.anchoredPosition = new Vector2(-35f, 0f);
TextMeshProUGUI component5 = obj.GetComponent<TextMeshProUGUI>(); TextMeshProUGUI component5 = obj.GetComponent<TextMeshProUGUI>();
component5.text = "Score: " + array[i * 5 + 1]; component5.text = "Score: " + array[i * 5 + 1];
component5.font = font; component5.font = font;
component5.fontSize = 14f; component5.fontSize = 14f;
component5.alignment = TextAlignmentOptions.Right; component5.alignment = TextAlignmentOptions.Right;
component5.rectTransform.sizeDelta = new Vector2(200f, 75f); component5.rectTransform.sizeDelta = new Vector2(200f, 75f);
component5.rectTransform.anchoredPosition = new Vector2(65f, 0f); component5.rectTransform.anchoredPosition = new Vector2(65f, 0f);
gameObject.transform.SetParent(content.transform, worldPositionStays: false); gameObject.transform.SetParent(content.transform, worldPositionStays: false);
} }
RectTransform component6 = content.GetComponent<RectTransform>(); RectTransform component6 = content.GetComponent<RectTransform>();
component6.sizeDelta = new Vector2(component6.sizeDelta.x, (float)num * (num2 + num3)); component6.sizeDelta = new Vector2(component6.sizeDelta.x, (float)num * (num2 + num3));
yield break; yield break;
} }
UpdateStatus(enabled: true, "Failed to fetch leaderboard stats"); UpdateStatus(enabled: true, "Failed to fetch leaderboard stats");
foreach (Transform item in content.transform) foreach (Transform item in content.transform)
{ {
UnityEngine.Object.Destroy(item.gameObject); UnityEngine.Object.Destroy(item.gameObject);
} }
} }
private void UpdateStatus(bool enabled = false, string message = "") private void UpdateStatus(bool enabled = false, string message = "")
{ {
statusText.gameObject.SetActive(enabled); statusText.gameObject.SetActive(enabled);
statusText.text = message; statusText.text = message;
} }
} }
+17 -17
View File
@@ -5,24 +5,24 @@ using UnityEngine.UI;
public class Loading : MonoBehaviour public class Loading : MonoBehaviour
{ {
public float clientVersion; public float clientVersion;
public TMP_Text statusText; public TMP_Text statusText;
public Button updateButton; public Button updateButton;
private void Awake() private void Awake()
{ {
QualitySettings.vSyncCount = PlayerPrefs.GetInt("Setting5", 1); QualitySettings.vSyncCount = PlayerPrefs.GetInt("Setting5", 1);
Screen.fullScreen = PlayerPrefs.GetInt("Setting1", 1) == 1; Screen.fullScreen = PlayerPrefs.GetInt("Setting1", 1) == 1;
PlayerPrefs.SetFloat("latestVersion", clientVersion); PlayerPrefs.SetFloat("latestVersion", clientVersion);
if (!PlayerPrefs.HasKey("iconSelected")) if (!PlayerPrefs.HasKey("iconSelected"))
{ {
PlayerPrefs.SetInt("iconSelected", 1); PlayerPrefs.SetInt("iconSelected", 1);
} }
PlayerPrefs.SetInt("icon", Mathf.Clamp(PlayerPrefs.GetInt("icon", 0), 1, 4)); PlayerPrefs.SetInt("icon", Mathf.Clamp(PlayerPrefs.GetInt("icon", 0), 1, 4));
PlayerPrefs.SetInt("overlay", Mathf.Clamp(PlayerPrefs.GetInt("overlay", 0), 0, 9)); PlayerPrefs.SetInt("overlay", Mathf.Clamp(PlayerPrefs.GetInt("overlay", 0), 0, 9));
PlayerPrefs.Save(); PlayerPrefs.Save();
SceneManager.LoadScene("Menu"); SceneManager.LoadScene("Menu");
} }
} }
+36 -36
View File
@@ -4,46 +4,46 @@ using UnityEngine.UI;
public class Menu : MonoBehaviour public class Menu : MonoBehaviour
{ {
public Button exitBtn; public Button exitBtn;
public Button playBtn; public Button playBtn;
public Button settingsBtn; public Button settingsBtn;
public Button accountBtn; public Button accountBtn;
public Button leaderboardBtn; public Button leaderboardBtn;
public Button iconkitButton; public Button iconkitButton;
private void Awake() private void Awake()
{ {
exitBtn.onClick.AddListener(delegate exitBtn.onClick.AddListener(delegate
{ {
Application.Quit(); Application.Quit();
}); });
playBtn.onClick.AddListener(delegate playBtn.onClick.AddListener(delegate
{ {
SceneManager.LoadScene("Game"); SceneManager.LoadScene("Game");
}); });
settingsBtn.onClick.AddListener(delegate settingsBtn.onClick.AddListener(delegate
{ {
SceneManager.LoadScene("Settings"); SceneManager.LoadScene("Settings");
}); });
accountBtn.onClick.AddListener(delegate accountBtn.onClick.AddListener(delegate
{ {
SceneManager.LoadScene("Account"); SceneManager.LoadScene("Account");
}); });
leaderboardBtn.onClick.AddListener(delegate leaderboardBtn.onClick.AddListener(delegate
{ {
SceneManager.LoadScene("Leaderboard"); SceneManager.LoadScene("Leaderboard");
}); });
iconkitButton.onClick.AddListener(delegate iconkitButton.onClick.AddListener(delegate
{ {
SceneManager.LoadScene("Iconkit"); SceneManager.LoadScene("Iconkit");
}); });
PlayerPrefs.SetInt("icon", Mathf.Clamp(PlayerPrefs.GetInt("icon", 0), 1, 4)); PlayerPrefs.SetInt("icon", Mathf.Clamp(PlayerPrefs.GetInt("icon", 0), 1, 4));
PlayerPrefs.SetInt("overlay", Mathf.Clamp(PlayerPrefs.GetInt("overlay", 0), 0, 9)); PlayerPrefs.SetInt("overlay", Mathf.Clamp(PlayerPrefs.GetInt("overlay", 0), 0, 9));
PlayerPrefs.Save(); PlayerPrefs.Save();
} }
} }
+35 -35
View File
@@ -4,49 +4,49 @@ using UnityEngine.UI;
public class PauseMenu : MonoBehaviour public class PauseMenu : MonoBehaviour
{ {
public GameObject pausePanel; public GameObject pausePanel;
public Button menuButton; public Button menuButton;
public Button playButton; public Button playButton;
public AudioSource backgroundMusic; public AudioSource backgroundMusic;
public Slider musicSlider; public Slider musicSlider;
public Slider sfxSlider; public Slider sfxSlider;
private void Start() private void Start()
{ {
menuButton.onClick.AddListener(MenuClick); menuButton.onClick.AddListener(MenuClick);
playButton.onClick.AddListener(TogglePause); playButton.onClick.AddListener(TogglePause);
musicSlider.onValueChanged.AddListener(UpdateMusicVolume); musicSlider.onValueChanged.AddListener(UpdateMusicVolume);
sfxSlider.onValueChanged.AddListener(UpdateSFXVolume); sfxSlider.onValueChanged.AddListener(UpdateSFXVolume);
musicSlider.value = PlayerPrefs.GetFloat("musicVolume", 1f); musicSlider.value = PlayerPrefs.GetFloat("musicVolume", 1f);
sfxSlider.value = PlayerPrefs.GetFloat("sfxVolume", 1f); sfxSlider.value = PlayerPrefs.GetFloat("sfxVolume", 1f);
} }
private void TogglePause() private void TogglePause()
{ {
backgroundMusic.Play(); backgroundMusic.Play();
pausePanel.SetActive(value: false); pausePanel.SetActive(value: false);
} }
private void MenuClick() private void MenuClick()
{ {
SceneManager.LoadScene("Menu"); SceneManager.LoadScene("Menu");
} }
private void UpdateMusicVolume(float volume) private void UpdateMusicVolume(float volume)
{ {
PlayerPrefs.SetFloat("musicVolume", volume); PlayerPrefs.SetFloat("musicVolume", volume);
PlayerPrefs.Save(); PlayerPrefs.Save();
backgroundMusic.volume = volume; backgroundMusic.volume = volume;
} }
private void UpdateSFXVolume(float volume) private void UpdateSFXVolume(float volume)
{ {
PlayerPrefs.SetFloat("sfxVolume", volume); PlayerPrefs.SetFloat("sfxVolume", volume);
PlayerPrefs.Save(); PlayerPrefs.Save();
} }
} }
+77 -77
View File
@@ -4,97 +4,97 @@ using UnityEngine.UI;
public class Settings : MonoBehaviour public class Settings : MonoBehaviour
{ {
public Toggle setting1toggle; public Toggle setting1toggle;
public Toggle setting2toggle; public Toggle setting2toggle;
public Toggle setting3toggle; public Toggle setting3toggle;
public Toggle setting4toggle; public Toggle setting4toggle;
public Toggle setting5toggle; public Toggle setting5toggle;
public Button backbutton; public Button backbutton;
public Slider musicSlider; public Slider musicSlider;
public Slider sfxSlider; public Slider sfxSlider;
private void Awake() private void Awake()
{ {
musicSlider.value = PlayerPrefs.GetFloat("musicVolume", 1f); musicSlider.value = PlayerPrefs.GetFloat("musicVolume", 1f);
sfxSlider.value = PlayerPrefs.GetFloat("sfxVolume", 1f); sfxSlider.value = PlayerPrefs.GetFloat("sfxVolume", 1f);
setting1toggle.isOn = PlayerPrefs.GetInt("Setting1", 1) == 1; setting1toggle.isOn = PlayerPrefs.GetInt("Setting1", 1) == 1;
setting2toggle.isOn = PlayerPrefs.GetInt("Setting2", 0) == 1; setting2toggle.isOn = PlayerPrefs.GetInt("Setting2", 0) == 1;
setting3toggle.isOn = PlayerPrefs.GetInt("Setting3", 0) == 1; setting3toggle.isOn = PlayerPrefs.GetInt("Setting3", 0) == 1;
setting4toggle.isOn = PlayerPrefs.GetInt("Setting4", 0) == 1; setting4toggle.isOn = PlayerPrefs.GetInt("Setting4", 0) == 1;
setting5toggle.isOn = PlayerPrefs.GetInt("Setting5", 1) == 1; setting5toggle.isOn = PlayerPrefs.GetInt("Setting5", 1) == 1;
backbutton.onClick.AddListener(BackButton); backbutton.onClick.AddListener(BackButton);
setting1toggle.onValueChanged.AddListener(delegate setting1toggle.onValueChanged.AddListener(delegate
{ {
Setting1ToggleValueChanged(setting1toggle); Setting1ToggleValueChanged(setting1toggle);
}); });
setting2toggle.onValueChanged.AddListener(delegate setting2toggle.onValueChanged.AddListener(delegate
{ {
Setting2ToggleValueChanged(setting2toggle); Setting2ToggleValueChanged(setting2toggle);
}); });
setting3toggle.onValueChanged.AddListener(delegate setting3toggle.onValueChanged.AddListener(delegate
{ {
Setting3ToggleValueChanged(setting3toggle); Setting3ToggleValueChanged(setting3toggle);
}); });
setting4toggle.onValueChanged.AddListener(delegate setting4toggle.onValueChanged.AddListener(delegate
{ {
Setting4ToggleValueChanged(setting4toggle); Setting4ToggleValueChanged(setting4toggle);
}); });
setting5toggle.onValueChanged.AddListener(delegate setting5toggle.onValueChanged.AddListener(delegate
{ {
Setting5ToggleValueChanged(setting5toggle); Setting5ToggleValueChanged(setting5toggle);
}); });
musicSlider.onValueChanged.AddListener(UpdateMusicVolume); musicSlider.onValueChanged.AddListener(UpdateMusicVolume);
sfxSlider.onValueChanged.AddListener(UpdateSFXVolume); sfxSlider.onValueChanged.AddListener(UpdateSFXVolume);
} }
private void Setting1ToggleValueChanged(Toggle change) private void Setting1ToggleValueChanged(Toggle change)
{ {
Screen.fullScreen = change.isOn; Screen.fullScreen = change.isOn;
PlayerPrefs.SetInt("Setting1", change.isOn ? 1 : 0); PlayerPrefs.SetInt("Setting1", change.isOn ? 1 : 0);
} }
private void Setting2ToggleValueChanged(Toggle change) private void Setting2ToggleValueChanged(Toggle change)
{ {
PlayerPrefs.SetInt("Setting2", change.isOn ? 1 : 0); PlayerPrefs.SetInt("Setting2", change.isOn ? 1 : 0);
} }
private void Setting3ToggleValueChanged(Toggle change) private void Setting3ToggleValueChanged(Toggle change)
{ {
PlayerPrefs.SetInt("Setting3", change.isOn ? 1 : 0); PlayerPrefs.SetInt("Setting3", change.isOn ? 1 : 0);
} }
private void Setting4ToggleValueChanged(Toggle change) private void Setting4ToggleValueChanged(Toggle change)
{ {
PlayerPrefs.SetInt("Setting4", change.isOn ? 1 : 0); PlayerPrefs.SetInt("Setting4", change.isOn ? 1 : 0);
} }
private void Setting5ToggleValueChanged(Toggle change) private void Setting5ToggleValueChanged(Toggle change)
{ {
PlayerPrefs.SetInt("Setting5", change.isOn ? 1 : 0); PlayerPrefs.SetInt("Setting5", change.isOn ? 1 : 0);
QualitySettings.vSyncCount = (change.isOn ? 1 : 0); QualitySettings.vSyncCount = (change.isOn ? 1 : 0);
} }
private void BackButton() private void BackButton()
{ {
SceneManager.LoadScene("Menu"); SceneManager.LoadScene("Menu");
} }
private void UpdateMusicVolume(float volume) private void UpdateMusicVolume(float volume)
{ {
PlayerPrefs.SetFloat("musicVolume", volume); PlayerPrefs.SetFloat("musicVolume", volume);
PlayerPrefs.Save(); PlayerPrefs.Save();
} }
private void UpdateSFXVolume(float volume) private void UpdateSFXVolume(float volume)
{ {
PlayerPrefs.SetFloat("sfxVolume", volume); PlayerPrefs.SetFloat("sfxVolume", volume);
PlayerPrefs.Save(); PlayerPrefs.Save();
} }
} }