From 47030a76a103c4b34dec8f6901c84956def5faf5 Mon Sep 17 00:00:00 2001 From: Lncvrt Date: Mon, 14 Jul 2025 16:55:26 -0700 Subject: [PATCH] A bunch of tweaks --- .../AccountMenu/AccountChangePassword.cs | 18 ++++---- .../AccountMenu/AccountChangeUsername.cs | 16 +++---- Assets/Scripts/AccountMenu/AccountHandler.cs | 7 ---- Assets/Scripts/AccountMenu/AccountLoggedIn.cs | 34 +++++++-------- Assets/Scripts/AccountMenu/AccountLogin.cs | 18 ++++---- .../AccountMenu/AccountRefreshLogin.cs | 16 +++---- Assets/Scripts/AccountMenu/AccountRegister.cs | 20 ++++----- Assets/Scripts/BazookaManager.cs | 4 +- Assets/Scripts/ChatroomMenu.cs | 2 +- Assets/Scripts/EncryptedWWWForm.cs | 4 +- Assets/Scripts/GamePlayer.cs | 6 +-- .../IconMarketplaceDownloadIcon.cs | 16 +++---- .../IconMarketplace/IconMarketplaceManager.cs | 6 ++- .../IconMarketplaceUploadIcon.cs | 42 +++++++++++-------- Assets/Scripts/ImageUtil.cs | 33 --------------- Assets/Scripts/ImageUtil.cs.meta | 2 - Assets/Scripts/LatestVersionText.cs | 2 +- Assets/Scripts/LeaderboardsMenu.cs | 4 +- Assets/Scripts/Tools.cs | 37 +++++++++++++++- 19 files changed, 144 insertions(+), 143 deletions(-) delete mode 100644 Assets/Scripts/ImageUtil.cs delete mode 100644 Assets/Scripts/ImageUtil.cs.meta diff --git a/Assets/Scripts/AccountMenu/AccountChangePassword.cs b/Assets/Scripts/AccountMenu/AccountChangePassword.cs index 8f23d76..1696d98 100644 --- a/Assets/Scripts/AccountMenu/AccountChangePassword.cs +++ b/Assets/Scripts/AccountMenu/AccountChangePassword.cs @@ -31,7 +31,7 @@ public class AccountChangePassword : MonoBehaviour { if (changePasswordNewPasswordInput.text != changePasswordRetypeNewPasswordInput.text) { - AccountHandler.UpdateStatusText(changePasswordStatusText, "Passwords do not match", Color.red); + Tools.UpdateStatusText(changePasswordStatusText, "Passwords do not match", Color.red); return; } EncryptedWWWForm dataForm = new(); @@ -39,35 +39,35 @@ public class AccountChangePassword : MonoBehaviour dataForm.AddField("newpassword", changePasswordNewPasswordInput.text); dataForm.AddField("token", BazookaManager.Instance.GetAccountSession()); dataForm.AddField("username", BazookaManager.Instance.GetAccountName()); - using UnityWebRequest request = UnityWebRequest.Post(SensitiveInfo.SERVER_DATABASE_PREFIX + "changeAccountPassword.php", dataForm.GetWWWForm()); + using UnityWebRequest request = UnityWebRequest.Post(SensitiveInfo.SERVER_DATABASE_PREFIX + "changeAccountPassword.php", dataForm.form); request.SetRequestHeader("Requester", "BerryDashClient"); request.SetRequestHeader("ClientVersion", Application.version); request.SetRequestHeader("ClientPlatform", Application.platform.ToString()); await request.SendWebRequest(); if (request.result != UnityWebRequest.Result.Success) { - AccountHandler.UpdateStatusText(changePasswordStatusText, "Failed to make HTTP request", Color.red); + Tools.UpdateStatusText(changePasswordStatusText, "Failed to make HTTP request", Color.red); return; } string response = SensitiveInfo.Decrypt(request.downloadHandler.text, SensitiveInfo.SERVER_RECEIVE_TRANSFER_KEY); if (response == "-999") { - AccountHandler.UpdateStatusText(changePasswordStatusText, "Server error while fetching data", Color.red); + Tools.UpdateStatusText(changePasswordStatusText, "Server error while fetching data", Color.red); return; } else if (response == "-998") { - AccountHandler.UpdateStatusText(changePasswordStatusText, "Client version too outdated to access servers", Color.red); + Tools.UpdateStatusText(changePasswordStatusText, "Client version too outdated to access servers", Color.red); return; } else if (response == "-997") { - AccountHandler.UpdateStatusText(changePasswordStatusText, "Encryption/decryption issues", Color.red); + Tools.UpdateStatusText(changePasswordStatusText, "Encryption/decryption issues", Color.red); return; } else if (response == "-996") { - AccountHandler.UpdateStatusText(changePasswordStatusText, "Can't send requests on self-built instance", Color.red); + Tools.UpdateStatusText(changePasswordStatusText, "Can't send requests on self-built instance", Color.red); return; } else @@ -77,11 +77,11 @@ public class AccountChangePassword : MonoBehaviour { BazookaManager.Instance.SetAccountSession((string)jsonResponse["token"]); AccountHandler.instance.SwitchPanel(0); - AccountHandler.UpdateStatusText(AccountHandler.instance.accountLoggedIn.loggedInText, "Password changed successfully", Color.green); + Tools.UpdateStatusText(AccountHandler.instance.accountLoggedIn.loggedInText, "Password changed successfully", Color.green); } else { - AccountHandler.UpdateStatusText(changePasswordStatusText, (string)jsonResponse["message"], Color.red); + Tools.UpdateStatusText(changePasswordStatusText, (string)jsonResponse["message"], Color.red); } } } diff --git a/Assets/Scripts/AccountMenu/AccountChangeUsername.cs b/Assets/Scripts/AccountMenu/AccountChangeUsername.cs index d217334..700f4cd 100644 --- a/Assets/Scripts/AccountMenu/AccountChangeUsername.cs +++ b/Assets/Scripts/AccountMenu/AccountChangeUsername.cs @@ -32,35 +32,35 @@ public class AccountChangeUsername : MonoBehaviour dataForm.AddField("newusername", changeUsernameNewUsernameInput.text); dataForm.AddField("token", BazookaManager.Instance.GetAccountSession()); dataForm.AddField("username", BazookaManager.Instance.GetAccountName()); - using UnityWebRequest request = UnityWebRequest.Post(SensitiveInfo.SERVER_DATABASE_PREFIX + "changeAccountUsername.php", dataForm.GetWWWForm()); + using UnityWebRequest request = UnityWebRequest.Post(SensitiveInfo.SERVER_DATABASE_PREFIX + "changeAccountUsername.php", dataForm.form); request.SetRequestHeader("Requester", "BerryDashClient"); request.SetRequestHeader("ClientVersion", Application.version); request.SetRequestHeader("ClientPlatform", Application.platform.ToString()); await request.SendWebRequest(); if (request.result != UnityWebRequest.Result.Success) { - AccountHandler.UpdateStatusText(changeUsernameStatusText, "Failed to make HTTP request", Color.red); + Tools.UpdateStatusText(changeUsernameStatusText, "Failed to make HTTP request", Color.red); return; } string response = SensitiveInfo.Decrypt(request.downloadHandler.text, SensitiveInfo.SERVER_RECEIVE_TRANSFER_KEY); if (response == "-999") { - AccountHandler.UpdateStatusText(changeUsernameStatusText, "Server error while fetching data", Color.red); + Tools.UpdateStatusText(changeUsernameStatusText, "Server error while fetching data", Color.red); return; } else if (response == "-998") { - AccountHandler.UpdateStatusText(changeUsernameStatusText, "Client version too outdated to access servers", Color.red); + Tools.UpdateStatusText(changeUsernameStatusText, "Client version too outdated to access servers", Color.red); return; } else if (response == "-997") { - AccountHandler.UpdateStatusText(changeUsernameStatusText, "Encryption/decryption issues", Color.red); + Tools.UpdateStatusText(changeUsernameStatusText, "Encryption/decryption issues", Color.red); return; } else if (response == "-996") { - AccountHandler.UpdateStatusText(changeUsernameStatusText, "Can't send requests on self-built instance", Color.red); + Tools.UpdateStatusText(changeUsernameStatusText, "Can't send requests on self-built instance", Color.red); return; } else @@ -70,11 +70,11 @@ public class AccountChangeUsername : MonoBehaviour { BazookaManager.Instance.SetAccountName(changeUsernameNewUsernameInput.text); AccountHandler.instance.SwitchPanel(0); - AccountHandler.UpdateStatusText(AccountHandler.instance.accountLoggedIn.loggedInText, "Username changed successfully", Color.green); + Tools.UpdateStatusText(AccountHandler.instance.accountLoggedIn.loggedInText, "Username changed successfully", Color.green); } else { - AccountHandler.UpdateStatusText(changeUsernameStatusText, (string)jsonResponse["message"], Color.red); + Tools.UpdateStatusText(changeUsernameStatusText, (string)jsonResponse["message"], Color.red); } } } diff --git a/Assets/Scripts/AccountMenu/AccountHandler.cs b/Assets/Scripts/AccountMenu/AccountHandler.cs index ed389a4..a43029e 100644 --- a/Assets/Scripts/AccountMenu/AccountHandler.cs +++ b/Assets/Scripts/AccountMenu/AccountHandler.cs @@ -1,4 +1,3 @@ -using TMPro; using UnityEngine; public class AccountHandler : MonoBehaviour @@ -98,10 +97,4 @@ public class AccountHandler : MonoBehaviour break; } } - - public static void UpdateStatusText(TMP_Text statusText, string message, Color color) - { - statusText.text = message; - statusText.color = color; - } } \ No newline at end of file diff --git a/Assets/Scripts/AccountMenu/AccountLoggedIn.cs b/Assets/Scripts/AccountMenu/AccountLoggedIn.cs index b51627b..9dd35f9 100644 --- a/Assets/Scripts/AccountMenu/AccountLoggedIn.cs +++ b/Assets/Scripts/AccountMenu/AccountLoggedIn.cs @@ -39,7 +39,7 @@ public class AccountLoggedIn : MonoBehaviour { loggedInSaveButton.interactable = true; loggedInLoadButton.interactable = true; - AccountHandler.UpdateStatusText(loggedInText, "Logged in as: " + BazookaManager.Instance.GetAccountName(), Color.white); + Tools.UpdateStatusText(loggedInText, "Logged in as: " + BazookaManager.Instance.GetAccountName(), Color.white); } async void SaveAccount() @@ -60,35 +60,35 @@ public class AccountLoggedIn : MonoBehaviour dataForm.AddField("totalAttempts", BazookaManager.Instance.GetGameStoreTotalAttepts().ToString()); dataForm.AddField("birdColor", BazookaManager.Instance.GetColorSettingIcon().ToString(Formatting.None)); dataForm.AddField("overlayColor", BazookaManager.Instance.GetColorSettingOverlay().ToString(Formatting.None)); - using UnityWebRequest request = UnityWebRequest.Post(SensitiveInfo.SERVER_DATABASE_PREFIX + "saveAccount.php", dataForm.GetWWWForm()); + using UnityWebRequest request = UnityWebRequest.Post(SensitiveInfo.SERVER_DATABASE_PREFIX + "saveAccount.php", dataForm.form); request.SetRequestHeader("Requester", "BerryDashClient"); request.SetRequestHeader("ClientVersion", Application.version); request.SetRequestHeader("ClientPlatform", Application.platform.ToString()); await request.SendWebRequest(); if (request.result != UnityWebRequest.Result.Success) { - AccountHandler.UpdateStatusText(loggedInText, "Failed to make HTTP request", Color.red); + Tools.UpdateStatusText(loggedInText, "Failed to make HTTP request", Color.red); return; } string response = SensitiveInfo.Decrypt(request.downloadHandler.text, SensitiveInfo.SERVER_RECEIVE_TRANSFER_KEY); if (response == "-999") { - AccountHandler.UpdateStatusText(loggedInText, "Server error while fetching data", Color.red); + Tools.UpdateStatusText(loggedInText, "Server error while fetching data", Color.red); return; } else if (response == "-998") { - AccountHandler.UpdateStatusText(loggedInText, "Client version too outdated to access servers", Color.red); + Tools.UpdateStatusText(loggedInText, "Client version too outdated to access servers", Color.red); return; } else if (response == "-997") { - AccountHandler.UpdateStatusText(loggedInText, "Encryption/decryption issues", Color.red); + Tools.UpdateStatusText(loggedInText, "Encryption/decryption issues", Color.red); return; } else if (response == "-996") { - AccountHandler.UpdateStatusText(loggedInText, "Can't send requests on self-built instance", Color.red); + Tools.UpdateStatusText(loggedInText, "Can't send requests on self-built instance", Color.red); return; } else @@ -96,11 +96,11 @@ public class AccountLoggedIn : MonoBehaviour var jsonResponse = JObject.Parse(response); if ((bool)jsonResponse["success"]) { - AccountHandler.UpdateStatusText(loggedInText, "Synced account", Color.green); + Tools.UpdateStatusText(loggedInText, "Synced account", Color.green); } else { - AccountHandler.UpdateStatusText(loggedInText, (string)jsonResponse["message"], Color.red); + Tools.UpdateStatusText(loggedInText, (string)jsonResponse["message"], Color.red); } } loggedInLoadButton.interactable = true; @@ -114,35 +114,35 @@ public class AccountLoggedIn : MonoBehaviour EncryptedWWWForm dataForm = new(); dataForm.AddField("token", BazookaManager.Instance.GetAccountSession()); dataForm.AddField("username", BazookaManager.Instance.GetAccountName()); - using UnityWebRequest request = UnityWebRequest.Post(SensitiveInfo.SERVER_DATABASE_PREFIX + "loadAccount.php", dataForm.GetWWWForm()); + using UnityWebRequest request = UnityWebRequest.Post(SensitiveInfo.SERVER_DATABASE_PREFIX + "loadAccount.php", dataForm.form); request.SetRequestHeader("Requester", "BerryDashClient"); request.SetRequestHeader("ClientVersion", Application.version); request.SetRequestHeader("ClientPlatform", Application.platform.ToString()); await request.SendWebRequest(); if (request.result != UnityWebRequest.Result.Success) { - AccountHandler.UpdateStatusText(loggedInText, "Failed to make HTTP request", Color.red); + Tools.UpdateStatusText(loggedInText, "Failed to make HTTP request", Color.red); return; } string response = SensitiveInfo.Decrypt(request.downloadHandler.text, SensitiveInfo.SERVER_RECEIVE_TRANSFER_KEY); if (response == "-999") { - AccountHandler.UpdateStatusText(loggedInText, "Server error while fetching data", Color.red); + Tools.UpdateStatusText(loggedInText, "Server error while fetching data", Color.red); return; } else if (response == "-998") { - AccountHandler.UpdateStatusText(loggedInText, "Client version too outdated to access servers", Color.red); + Tools.UpdateStatusText(loggedInText, "Client version too outdated to access servers", Color.red); return; } else if (response == "-997") { - AccountHandler.UpdateStatusText(loggedInText, "Encryption/decryption issues", Color.red); + Tools.UpdateStatusText(loggedInText, "Encryption/decryption issues", Color.red); return; } else if (response == "-996") { - AccountHandler.UpdateStatusText(loggedInText, "Can't send requests on self-built instance", Color.red); + Tools.UpdateStatusText(loggedInText, "Can't send requests on self-built instance", Color.red); return; } else @@ -161,11 +161,11 @@ public class AccountLoggedIn : MonoBehaviour BazookaManager.Instance.SetGameStoreTotalAttepts(BigInteger.Parse((string)jsonResponse["totalAttempts"])); BazookaManager.Instance.SetColorSettingIcon(JArray.Parse(jsonResponse["birdColor"].ToString())); BazookaManager.Instance.SetColorSettingOverlay(JArray.Parse(jsonResponse["overlayColor"].ToString())); - AccountHandler.UpdateStatusText(loggedInText, "Loaded account data", Color.green); + Tools.UpdateStatusText(loggedInText, "Loaded account data", Color.green); } else { - AccountHandler.UpdateStatusText(loggedInText, (string)jsonResponse["message"], Color.red); + Tools.UpdateStatusText(loggedInText, (string)jsonResponse["message"], Color.red); } } loggedInLoadButton.interactable = true; diff --git a/Assets/Scripts/AccountMenu/AccountLogin.cs b/Assets/Scripts/AccountMenu/AccountLogin.cs index e719fc1..19d431f 100644 --- a/Assets/Scripts/AccountMenu/AccountLogin.cs +++ b/Assets/Scripts/AccountMenu/AccountLogin.cs @@ -31,7 +31,7 @@ public class AccountLogin : MonoBehaviour { if (loginUsernameInput.text == string.Empty || loginPasswordInput.text == string.Empty) { - AccountHandler.UpdateStatusText(loginPanelStatusText, "All input fields must be filled", Color.red); + Tools.UpdateStatusText(loginPanelStatusText, "All input fields must be filled", Color.red); return; } EncryptedWWWForm dataForm = new(); @@ -39,35 +39,35 @@ public class AccountLogin : MonoBehaviour dataForm.AddField("password", loginPasswordInput.text); dataForm.AddField("currentHighScore", BazookaManager.Instance.GetGameStoreHighScore().ToString()); dataForm.AddField("loginType", "0"); - using UnityWebRequest request = UnityWebRequest.Post(SensitiveInfo.SERVER_DATABASE_PREFIX + "loginAccount.php", dataForm.GetWWWForm()); + using UnityWebRequest request = UnityWebRequest.Post(SensitiveInfo.SERVER_DATABASE_PREFIX + "loginAccount.php", dataForm.form); request.SetRequestHeader("Requester", "BerryDashClient"); request.SetRequestHeader("ClientVersion", Application.version); request.SetRequestHeader("ClientPlatform", Application.platform.ToString()); await request.SendWebRequest(); if (request.result != UnityWebRequest.Result.Success) { - AccountHandler.UpdateStatusText(loginPanelStatusText, "Failed to make HTTP request", Color.red); + Tools.UpdateStatusText(loginPanelStatusText, "Failed to make HTTP request", Color.red); return; } string response = SensitiveInfo.Decrypt(request.downloadHandler.text, SensitiveInfo.SERVER_RECEIVE_TRANSFER_KEY); if (response == "-999") { - AccountHandler.UpdateStatusText(loginPanelStatusText, "Server error while fetching data", Color.red); + Tools.UpdateStatusText(loginPanelStatusText, "Server error while fetching data", Color.red); return; } else if (response == "-998") { - AccountHandler.UpdateStatusText(loginPanelStatusText, "Client version too outdated to access servers", Color.red); + Tools.UpdateStatusText(loginPanelStatusText, "Client version too outdated to access servers", Color.red); return; } else if (response == "-997") { - AccountHandler.UpdateStatusText(loginPanelStatusText, "Encryption/decryption issues", Color.red); + Tools.UpdateStatusText(loginPanelStatusText, "Encryption/decryption issues", Color.red); return; } else if (response == "-996") { - AccountHandler.UpdateStatusText(loginPanelStatusText, "Can't send requests on self-built instance", Color.red); + Tools.UpdateStatusText(loginPanelStatusText, "Can't send requests on self-built instance", Color.red); return; } else @@ -90,11 +90,11 @@ public class AccountLogin : MonoBehaviour BazookaManager.Instance.SetColorSettingIcon(JArray.Parse(jsonResponse["data"]["birdColor"].ToString())); BazookaManager.Instance.SetColorSettingOverlay(JArray.Parse(jsonResponse["data"]["overlayColor"].ToString())); AccountHandler.instance.SwitchPanel(0); - AccountHandler.UpdateStatusText(loginPanelStatusText, "", Color.red); + Tools.UpdateStatusText(loginPanelStatusText, "", Color.red); } else { - AccountHandler.UpdateStatusText(loginPanelStatusText, (string)jsonResponse["message"], Color.red); + Tools.UpdateStatusText(loginPanelStatusText, (string)jsonResponse["message"], Color.red); } } } diff --git a/Assets/Scripts/AccountMenu/AccountRefreshLogin.cs b/Assets/Scripts/AccountMenu/AccountRefreshLogin.cs index 5b751e9..c9e8306 100644 --- a/Assets/Scripts/AccountMenu/AccountRefreshLogin.cs +++ b/Assets/Scripts/AccountMenu/AccountRefreshLogin.cs @@ -31,35 +31,35 @@ public class AccountRefreshLogin : MonoBehaviour dataForm.AddField("username", refreshLoginUsernameInput.text); dataForm.AddField("password", refreshLoginPasswordInput.text); dataForm.AddField("loginType", "1"); - using UnityWebRequest request = UnityWebRequest.Post(SensitiveInfo.SERVER_DATABASE_PREFIX + "loginAccount.php", dataForm.GetWWWForm()); + using UnityWebRequest request = UnityWebRequest.Post(SensitiveInfo.SERVER_DATABASE_PREFIX + "loginAccount.php", dataForm.form); request.SetRequestHeader("Requester", "BerryDashClient"); request.SetRequestHeader("ClientVersion", Application.version); request.SetRequestHeader("ClientPlatform", Application.platform.ToString()); await request.SendWebRequest(); if (request.result != UnityWebRequest.Result.Success) { - AccountHandler.UpdateStatusText(refreshLoginStatusText, "Failed to make HTTP request", Color.red); + Tools.UpdateStatusText(refreshLoginStatusText, "Failed to make HTTP request", Color.red); return; } string response = SensitiveInfo.Decrypt(request.downloadHandler.text, SensitiveInfo.SERVER_RECEIVE_TRANSFER_KEY); if (response == "-999") { - AccountHandler.UpdateStatusText(refreshLoginStatusText, "Server error while fetching data", Color.red); + Tools.UpdateStatusText(refreshLoginStatusText, "Server error while fetching data", Color.red); return; } else if (response == "-998") { - AccountHandler.UpdateStatusText(refreshLoginStatusText, "Client version too outdated to access servers", Color.red); + Tools.UpdateStatusText(refreshLoginStatusText, "Client version too outdated to access servers", Color.red); return; } else if (response == "-997") { - AccountHandler.UpdateStatusText(refreshLoginStatusText, "Encryption/decryption issues", Color.red); + Tools.UpdateStatusText(refreshLoginStatusText, "Encryption/decryption issues", Color.red); return; } else if (response == "-996") { - AccountHandler.UpdateStatusText(refreshLoginStatusText, "Can't send requests on self-built instance", Color.red); + Tools.UpdateStatusText(refreshLoginStatusText, "Can't send requests on self-built instance", Color.red); return; } else @@ -71,11 +71,11 @@ public class AccountRefreshLogin : MonoBehaviour BazookaManager.Instance.SetAccountName((string)jsonResponse["data"]["username"]); BazookaManager.Instance.SetAccountID(BigInteger.Parse((string)jsonResponse["data"]["userid"])); AccountHandler.instance.SwitchPanel(0); - AccountHandler.UpdateStatusText(refreshLoginStatusText, "", Color.red); + Tools.UpdateStatusText(refreshLoginStatusText, "", Color.red); } else { - AccountHandler.UpdateStatusText(refreshLoginStatusText, (string)jsonResponse["message"], Color.red); + Tools.UpdateStatusText(refreshLoginStatusText, (string)jsonResponse["message"], Color.red); } } } diff --git a/Assets/Scripts/AccountMenu/AccountRegister.cs b/Assets/Scripts/AccountMenu/AccountRegister.cs index 7ce0e55..8003d19 100644 --- a/Assets/Scripts/AccountMenu/AccountRegister.cs +++ b/Assets/Scripts/AccountMenu/AccountRegister.cs @@ -41,52 +41,52 @@ public class AccountRegister : MonoBehaviour registerRetypePasswordInput.text == string.Empty ) { - AccountHandler.UpdateStatusText(registerPanelStatusText, "All input fields must be filled", Color.red); + Tools.UpdateStatusText(registerPanelStatusText, "All input fields must be filled", Color.red); return; } if (registerEmailInput.text != registerRetypeEmailInput.text) { - AccountHandler.UpdateStatusText(registerPanelStatusText, "Emails don't match", Color.red); + Tools.UpdateStatusText(registerPanelStatusText, "Emails don't match", Color.red); return; } if (registerPasswordInput.text != registerRetypePasswordInput.text) { - AccountHandler.UpdateStatusText(registerPanelStatusText, "Passwords don't match", Color.red); + Tools.UpdateStatusText(registerPanelStatusText, "Passwords don't match", Color.red); return; } EncryptedWWWForm dataForm = new(); dataForm.AddField("username", registerUsernameInput.text); dataForm.AddField("email", registerEmailInput.text); dataForm.AddField("password", registerPasswordInput.text); - using UnityWebRequest request = UnityWebRequest.Post(SensitiveInfo.SERVER_DATABASE_PREFIX + "registerAccount.php", dataForm.GetWWWForm()); + using UnityWebRequest request = UnityWebRequest.Post(SensitiveInfo.SERVER_DATABASE_PREFIX + "registerAccount.php", dataForm.form); request.SetRequestHeader("Requester", "BerryDashClient"); request.SetRequestHeader("ClientVersion", Application.version); request.SetRequestHeader("ClientPlatform", Application.platform.ToString()); await request.SendWebRequest(); if (request.result != UnityWebRequest.Result.Success) { - AccountHandler.UpdateStatusText(registerPanelStatusText, "Failed to make HTTP request", Color.red); + Tools.UpdateStatusText(registerPanelStatusText, "Failed to make HTTP request", Color.red); return; } string response = SensitiveInfo.Decrypt(request.downloadHandler.text, SensitiveInfo.SERVER_RECEIVE_TRANSFER_KEY); if (response == "-999") { - AccountHandler.UpdateStatusText(registerPanelStatusText, "Server error while fetching data", Color.red); + Tools.UpdateStatusText(registerPanelStatusText, "Server error while fetching data", Color.red); return; } else if (response == "-998") { - AccountHandler.UpdateStatusText(registerPanelStatusText, "Client version too outdated to access servers", Color.red); + Tools.UpdateStatusText(registerPanelStatusText, "Client version too outdated to access servers", Color.red); return; } else if (response == "-997") { - AccountHandler.UpdateStatusText(registerPanelStatusText, "Encryption/decryption issues", Color.red); + Tools.UpdateStatusText(registerPanelStatusText, "Encryption/decryption issues", Color.red); return; } else if (response == "-996") { - AccountHandler.UpdateStatusText(registerPanelStatusText, "Can't send requests on self-built instance", Color.red); + Tools.UpdateStatusText(registerPanelStatusText, "Can't send requests on self-built instance", Color.red); return; } else @@ -98,7 +98,7 @@ public class AccountRegister : MonoBehaviour } else { - AccountHandler.UpdateStatusText(registerPanelStatusText, (string)jsonResponse["message"], Color.red); + Tools.UpdateStatusText(registerPanelStatusText, (string)jsonResponse["message"], Color.red); } } } diff --git a/Assets/Scripts/BazookaManager.cs b/Assets/Scripts/BazookaManager.cs index c052db6..ac01534 100644 --- a/Assets/Scripts/BazookaManager.cs +++ b/Assets/Scripts/BazookaManager.cs @@ -153,8 +153,8 @@ public class BazookaManager : MonoBehaviour public JObject GetCustomBirdIconData() { - if (saveFile["bird"] == null) return null; - if (saveFile["bird"]["customIcon"] == null) return null; + if (saveFile["bird"] == null) return new(); + if (saveFile["bird"]["customIcon"] == null) return new(); return saveFile["bird"]["customIcon"] as JObject; } diff --git a/Assets/Scripts/ChatroomMenu.cs b/Assets/Scripts/ChatroomMenu.cs index 88260a3..5c6b798 100644 --- a/Assets/Scripts/ChatroomMenu.cs +++ b/Assets/Scripts/ChatroomMenu.cs @@ -61,7 +61,7 @@ public class ChatroomMenu : MonoBehaviour dataForm.AddField("content", text); dataForm.AddField("token", BazookaManager.Instance.GetAccountSession()); dataForm.AddField("username", BazookaManager.Instance.GetAccountName()); - using UnityWebRequest request = UnityWebRequest.Post(SensitiveInfo.SERVER_DATABASE_PREFIX + "sendChatroomMessage.php", dataForm.GetWWWForm()); + using UnityWebRequest request = UnityWebRequest.Post(SensitiveInfo.SERVER_DATABASE_PREFIX + "sendChatroomMessage.php", dataForm.form); request.SetRequestHeader("Requester", "BerryDashClient"); request.SetRequestHeader("ClientVersion", Application.version); request.SetRequestHeader("ClientPlatform", Application.platform.ToString()); diff --git a/Assets/Scripts/EncryptedWWWForm.cs b/Assets/Scripts/EncryptedWWWForm.cs index 0540bfb..8bbdd9d 100644 --- a/Assets/Scripts/EncryptedWWWForm.cs +++ b/Assets/Scripts/EncryptedWWWForm.cs @@ -2,13 +2,11 @@ using UnityEngine; public class EncryptedWWWForm { - private readonly WWWForm form = new(); + public readonly WWWForm form = new(); public void AddField(string key, string value) { if (SensitiveInfo.SERVER_RECEIVE_TRANSFER_KEY.Trim() != string.Empty && SensitiveInfo.SERVER_SEND_TRANSFER_KEY.Trim() != string.Empty) form.AddField(SensitiveInfo.Encrypt(key, SensitiveInfo.SERVER_SEND_TRANSFER_KEY), SensitiveInfo.Encrypt(value, SensitiveInfo.SERVER_SEND_TRANSFER_KEY)); } - - public WWWForm GetWWWForm() => form; } \ No newline at end of file diff --git a/Assets/Scripts/GamePlayer.cs b/Assets/Scripts/GamePlayer.cs index ea2fa58..4ee5dd9 100644 --- a/Assets/Scripts/GamePlayer.cs +++ b/Assets/Scripts/GamePlayer.cs @@ -672,7 +672,7 @@ public class GamePlayer : MonoBehaviour } } - public void TogglePause() + internal void TogglePause() { if (pausePanel.activeSelf) { @@ -684,7 +684,7 @@ public class GamePlayer : MonoBehaviour } } - public void EnablePause() + internal void EnablePause() { Cursor.visible = true; Cursor.lockState = CursorLockMode.None; @@ -692,7 +692,7 @@ public class GamePlayer : MonoBehaviour pausePanel.SetActive(true); } - public void DisablePause() + internal void DisablePause() { lastMoveTime = Time.time; Cursor.visible = false; diff --git a/Assets/Scripts/IconMarketplace/IconMarketplaceDownloadIcon.cs b/Assets/Scripts/IconMarketplace/IconMarketplaceDownloadIcon.cs index aa4a205..f2a9080 100644 --- a/Assets/Scripts/IconMarketplace/IconMarketplaceDownloadIcon.cs +++ b/Assets/Scripts/IconMarketplace/IconMarketplaceDownloadIcon.cs @@ -27,7 +27,7 @@ public class IconMarketplaceDownloadIcon : MonoBehaviour Destroy(item.gameObject); } } - AccountHandler.UpdateStatusText(statusText, "Loading...", Color.white); + Tools.UpdateStatusText(statusText, "Loading...", Color.white); using UnityWebRequest request = UnityWebRequest.Get(SensitiveInfo.SERVER_DATABASE_PREFIX + "getMarketplaceIcons.php"); request.SetRequestHeader("Requester", "BerryDashClient"); request.SetRequestHeader("ClientVersion", Application.version); @@ -35,40 +35,40 @@ public class IconMarketplaceDownloadIcon : MonoBehaviour await request.SendWebRequest(); if (request.result != UnityWebRequest.Result.Success) { - AccountHandler.UpdateStatusText(statusText, "Failed to make HTTP request", Color.red); + Tools.UpdateStatusText(statusText, "Failed to make HTTP request", Color.red); return; } string response = SensitiveInfo.Decrypt(request.downloadHandler.text, SensitiveInfo.SERVER_RECEIVE_TRANSFER_KEY); if (response == "-999") { - AccountHandler.UpdateStatusText(statusText, "Server error while fetching data", Color.red); + Tools.UpdateStatusText(statusText, "Server error while fetching data", Color.red); return; } else if (response == "-998") { - AccountHandler.UpdateStatusText(statusText, "Client version too outdated to access servers", Color.red); + Tools.UpdateStatusText(statusText, "Client version too outdated to access servers", Color.red); return; } else if (response == "-997") { - AccountHandler.UpdateStatusText(statusText, "Encryption/decryption issues", Color.red); + Tools.UpdateStatusText(statusText, "Encryption/decryption issues", Color.red); return; } else if (response == "-996") { - AccountHandler.UpdateStatusText(statusText, "Can't send requests on self-built instance", Color.red); + Tools.UpdateStatusText(statusText, "Can't send requests on self-built instance", Color.red); return; } else { - AccountHandler.UpdateStatusText(statusText, "", Color.red); + Tools.UpdateStatusText(statusText, "", Color.red); var jsonResponse = JArray.Parse(response); foreach (var item in jsonResponse) { JObject entry = (JObject)item; GameObject newIcon = Instantiate(sample, content.transform); - ImageUtil.RenderFromBase64(entry["data"].ToString(), newIcon.transform.GetChild(0).GetChild(0).GetComponent()); + Tools.RenderFromBase64(entry["data"].ToString(), newIcon.transform.GetChild(0).GetChild(0).GetComponent()); newIcon.transform.GetChild(1).GetComponent().text = "Bird Name: " + entry["name"].ToString(); newIcon.transform.GetChild(2).GetComponent().text = "Price " + entry["price"].ToString() + " coin"; newIcon.transform.GetChild(3).GetComponent().text = "Designer Name: " + entry["username"].ToString(); diff --git a/Assets/Scripts/IconMarketplace/IconMarketplaceManager.cs b/Assets/Scripts/IconMarketplace/IconMarketplaceManager.cs index c65e9ea..0c0367c 100644 --- a/Assets/Scripts/IconMarketplace/IconMarketplaceManager.cs +++ b/Assets/Scripts/IconMarketplace/IconMarketplaceManager.cs @@ -13,6 +13,7 @@ public class IconMarketplaceManager : MonoBehaviour public Button downloadButton; public Button uploadButton; + public TMP_Text coinText; void Awake() { @@ -33,13 +34,15 @@ public class IconMarketplaceManager : MonoBehaviour uploadButton.transform.GetChild(1).GetComponent().text = "Not logged in to an account"; } #endif + SwitchPanel(0); } - public void SwitchPanel(int panelIndex) + internal void SwitchPanel(int panelIndex) { switch (panelIndex) { case 0: + coinText.text = "You have " + Tools.FormatWithCommas((BazookaManager.Instance.GetCustomBirdIconData()["totalCoins"] ?? "0").ToString()) + " coins"; normalPanel.SetActive(true); downloadPanel.SetActive(false); uploadPanel.SetActive(false); @@ -50,6 +53,7 @@ public class IconMarketplaceManager : MonoBehaviour uploadPanel.SetActive(false); break; case 2: + uploadPanelScript.Reset(); normalPanel.SetActive(false); downloadPanel.SetActive(false); uploadPanel.SetActive(true); diff --git a/Assets/Scripts/IconMarketplace/IconMarketplaceUploadIcon.cs b/Assets/Scripts/IconMarketplace/IconMarketplaceUploadIcon.cs index 3f2b316..16cf800 100644 --- a/Assets/Scripts/IconMarketplace/IconMarketplaceUploadIcon.cs +++ b/Assets/Scripts/IconMarketplace/IconMarketplaceUploadIcon.cs @@ -26,15 +26,15 @@ public class IconMarketplaceUploadIcon : MonoBehaviour { if (birdNameInput.text.Trim() == string.Empty) { - AccountHandler.UpdateStatusText(statusText, "Bird name can't be empty", Color.red); + Tools.UpdateStatusText(statusText, "Bird name can't be empty", Color.red); } else if (birdPriceInput.text.Trim() == string.Empty) { - AccountHandler.UpdateStatusText(statusText, "Bird price can't be empty", Color.red); + Tools.UpdateStatusText(statusText, "Bird price can't be empty", Color.red); } else if (birdData == null) { - AccountHandler.UpdateStatusText(statusText, "You must upload an image", Color.red); + Tools.UpdateStatusText(statusText, "You must upload an image", Color.red); } else { @@ -51,15 +51,15 @@ public class IconMarketplaceUploadIcon : MonoBehaviour fileContent = File.ReadAllBytes(path); if (fileContent.Length > 1024 * 1024) { - AccountHandler.UpdateStatusText(statusText, "File size exceeds 1 MB limit", Color.red); + Tools.UpdateStatusText(statusText, "File size exceeds 1 MB limit", Color.red); return; } birdData = Convert.ToBase64String(fileContent); - ImageUtil.RenderFromBase64(birdData, birdImage); + Tools.RenderFromBase64(birdData, birdImage); } catch (Exception e) { - AccountHandler.UpdateStatusText(statusText, "Failed to read file: " + e.Message, Color.red); + Tools.UpdateStatusText(statusText, "Failed to read file: " + e.Message, Color.red); return; } }); @@ -86,35 +86,35 @@ public class IconMarketplaceUploadIcon : MonoBehaviour dataForm.AddField("name", birdNameInput.text); dataForm.AddField("price", birdPriceInput.text); dataForm.AddField("filecontent", birdData); - using UnityWebRequest request = UnityWebRequest.Post(SensitiveInfo.SERVER_DATABASE_PREFIX + "uploadMarketplaceIcon.php", dataForm.GetWWWForm()); + using UnityWebRequest request = UnityWebRequest.Post(SensitiveInfo.SERVER_DATABASE_PREFIX + "uploadMarketplaceIcon.php", dataForm.form); request.SetRequestHeader("Requester", "BerryDashClient"); request.SetRequestHeader("ClientVersion", Application.version); request.SetRequestHeader("ClientPlatform", Application.platform.ToString()); await request.SendWebRequest(); if (request.result != UnityWebRequest.Result.Success) { - AccountHandler.UpdateStatusText(statusText, "Failed to make HTTP request", Color.red); + Tools.UpdateStatusText(statusText, "Failed to make HTTP request", Color.red); return; } string response = SensitiveInfo.Decrypt(request.downloadHandler.text, SensitiveInfo.SERVER_RECEIVE_TRANSFER_KEY); if (response == "-999") { - AccountHandler.UpdateStatusText(statusText, "Server error while fetching data", Color.red); + Tools.UpdateStatusText(statusText, "Server error while fetching data", Color.red); return; } else if (response == "-998") { - AccountHandler.UpdateStatusText(statusText, "Client version too outdated to access servers", Color.red); + Tools.UpdateStatusText(statusText, "Client version too outdated to access servers", Color.red); return; } else if (response == "-997") { - AccountHandler.UpdateStatusText(statusText, "Encryption/decryption issues", Color.red); + Tools.UpdateStatusText(statusText, "Encryption/decryption issues", Color.red); return; } else if (response == "-996") { - AccountHandler.UpdateStatusText(statusText, "Can't send requests on self-built instance", Color.red); + Tools.UpdateStatusText(statusText, "Can't send requests on self-built instance", Color.red); return; } else @@ -122,16 +122,22 @@ public class IconMarketplaceUploadIcon : MonoBehaviour var jsonResponse = JObject.Parse(response); if ((bool)jsonResponse["success"]) { - birdImage.sprite = Resources.Load("Other/X"); - birdData = null; - birdNameInput.text = ""; - birdPriceInput.text = ""; - AccountHandler.UpdateStatusText(statusText, "Icon uploaded successfully!", Color.green); + Reset(); + Tools.UpdateStatusText(statusText, "Icon uploaded successfully!", Color.green); } else { - AccountHandler.UpdateStatusText(statusText, (string)jsonResponse["message"], Color.red); + Tools.UpdateStatusText(statusText, (string)jsonResponse["message"], Color.red); } } } + + internal void Reset() + { + birdImage.sprite = Resources.Load("Other/X"); + birdData = null; + birdNameInput.text = string.Empty; + birdPriceInput.text = string.Empty; + statusText.text = string.Empty; + } } diff --git a/Assets/Scripts/ImageUtil.cs b/Assets/Scripts/ImageUtil.cs deleted file mode 100644 index 2b77e0a..0000000 --- a/Assets/Scripts/ImageUtil.cs +++ /dev/null @@ -1,33 +0,0 @@ - -using System; -using UnityEngine; -using UnityEngine.UI; - -public static class ImageUtil -{ - public static void RenderFromBase64(string base64, Image targetImage) - { - byte[] imageData = Convert.FromBase64String(base64); - Texture2D tex = new(2, 2, TextureFormat.ARGB32, false); - if (!tex.LoadImage(imageData)) return; - - tex.filterMode = FilterMode.Point; - tex.Apply(false, false); - - Sprite sprite = Sprite.Create(tex, new Rect(0, 0, tex.width, tex.height), new Vector2(0.5f, 0.5f)); - targetImage.sprite = sprite; - } - - public static void RenderFromBase64(string base64, SpriteRenderer targetImage) - { - byte[] imageData = Convert.FromBase64String(base64); - Texture2D tex = new(2, 2, TextureFormat.ARGB32, false); - if (!tex.LoadImage(imageData)) return; - - tex.filterMode = FilterMode.Point; - tex.Apply(false, false); - - Sprite sprite = Sprite.Create(tex, new Rect(0, 0, tex.width, tex.height), new Vector2(0.5f, 0.5f)); - targetImage.sprite = sprite; - } -} \ No newline at end of file diff --git a/Assets/Scripts/ImageUtil.cs.meta b/Assets/Scripts/ImageUtil.cs.meta deleted file mode 100644 index 19e0895..0000000 --- a/Assets/Scripts/ImageUtil.cs.meta +++ /dev/null @@ -1,2 +0,0 @@ -fileFormatVersion: 2 -guid: f608a791036150d12852f910d572dbc4 \ No newline at end of file diff --git a/Assets/Scripts/LatestVersionText.cs b/Assets/Scripts/LatestVersionText.cs index 5fb669b..be4b7a8 100644 --- a/Assets/Scripts/LatestVersionText.cs +++ b/Assets/Scripts/LatestVersionText.cs @@ -59,7 +59,7 @@ public class LatestVersionText : MonoBehaviour RefreshText(); } - public void RefreshText() + internal void RefreshText() { if (text == null || updateButton == null) return; if (latest == null) diff --git a/Assets/Scripts/LeaderboardsMenu.cs b/Assets/Scripts/LeaderboardsMenu.cs index c891c3e..dd5d88a 100644 --- a/Assets/Scripts/LeaderboardsMenu.cs +++ b/Assets/Scripts/LeaderboardsMenu.cs @@ -113,7 +113,7 @@ public class LeaderboardsMenu : MonoBehaviour UpdateStatus(true, "Loading..."); EncryptedWWWForm dataForm = new(); dataForm.AddField("type", "0"); - using UnityWebRequest request = UnityWebRequest.Post(SensitiveInfo.SERVER_DATABASE_PREFIX + "getTopPlayers.php", dataForm.GetWWWForm()); + using UnityWebRequest request = UnityWebRequest.Post(SensitiveInfo.SERVER_DATABASE_PREFIX + "getTopPlayers.php", dataForm.form); request.SetRequestHeader("Requester", "BerryDashClient"); request.SetRequestHeader("ClientVersion", Application.version); request.SetRequestHeader("ClientPlatform", Application.platform.ToString()); @@ -230,7 +230,7 @@ public class LeaderboardsMenu : MonoBehaviour EncryptedWWWForm dataForm = new(); dataForm.AddField("showType", showAmount.ToString()); dataForm.AddField("type", "1"); - using UnityWebRequest request = UnityWebRequest.Post(SensitiveInfo.SERVER_DATABASE_PREFIX + "getTopPlayers.php", dataForm.GetWWWForm()); + using UnityWebRequest request = UnityWebRequest.Post(SensitiveInfo.SERVER_DATABASE_PREFIX + "getTopPlayers.php", dataForm.form); request.SetRequestHeader("Requester", "BerryDashClient"); request.SetRequestHeader("ClientVersion", Application.version); request.SetRequestHeader("ClientPlatform", Application.platform.ToString()); diff --git a/Assets/Scripts/Tools.cs b/Assets/Scripts/Tools.cs index 3b6725e..e682294 100644 --- a/Assets/Scripts/Tools.cs +++ b/Assets/Scripts/Tools.cs @@ -1,5 +1,8 @@ -using System.Numerics; +using System; +using System.Numerics; +using TMPro; using UnityEngine; +using UnityEngine.UI; public static class Tools { @@ -39,4 +42,36 @@ public static class Tools { return string.Format("{0:N0}", number); } + + public static void UpdateStatusText(TMP_Text statusText, string message, Color color) + { + statusText.text = message; + statusText.color = color; + } + + public static void RenderFromBase64(string base64, Image targetImage) + { + byte[] imageData = Convert.FromBase64String(base64); + Texture2D tex = new(2, 2, TextureFormat.ARGB32, false); + if (!tex.LoadImage(imageData)) return; + + tex.filterMode = FilterMode.Point; + tex.Apply(false, false); + + Sprite sprite = Sprite.Create(tex, new Rect(0, 0, tex.width, tex.height), new UnityEngine.Vector2(0.5f, 0.5f)); + targetImage.sprite = sprite; + } + + public static void RenderFromBase64(string base64, SpriteRenderer targetImage) + { + byte[] imageData = Convert.FromBase64String(base64); + Texture2D tex = new(2, 2, TextureFormat.ARGB32, false); + if (!tex.LoadImage(imageData)) return; + + tex.filterMode = FilterMode.Point; + tex.Apply(false, false); + + Sprite sprite = Sprite.Create(tex, new Rect(0, 0, tex.width, tex.height), new UnityEngine.Vector2(0.5f, 0.5f)); + targetImage.sprite = sprite; + } } \ No newline at end of file