8 Commits
1.4.0 ... 1.4.1

Author SHA1 Message Date
2f29ab5406 Remove unity splash screen 2025-06-05 21:45:19 -07:00
02b515a8af 1.4.1 2025-06-05 21:34:31 -07:00
ca814f4dd7 That didn't need to be a variable 2025-06-05 21:34:15 -07:00
a69f4cc73d Optimize arrow finding code & add commas to scores 2025-06-05 21:31:48 -07:00
ccc6a5431c Show version if on the Browser 2025-06-05 21:31:25 -07:00
7bd76275d0 Add the hashtag back to the leaderboards menu 2025-06-05 18:35:33 -07:00
00141ae324 Fix input fields in accounts menu 2025-06-05 18:14:36 -07:00
3815040f47 Add "v" before version in latest version text 2025-06-05 17:49:33 -07:00
13 changed files with 76 additions and 51 deletions

View File

@@ -2175,7 +2175,7 @@ MonoBehaviour:
m_CharacterValidation: 0 m_CharacterValidation: 0
m_RegexValue: '^[a-zA-Z0-9_- ]' m_RegexValue: '^[a-zA-Z0-9_- ]'
m_GlobalPointSize: 14 m_GlobalPointSize: 14
m_CharacterLimit: 20 m_CharacterLimit: 0
m_OnEndEdit: m_OnEndEdit:
m_PersistentCalls: m_PersistentCalls:
m_Calls: [] m_Calls: []
@@ -3522,7 +3522,7 @@ MonoBehaviour:
m_CharacterValidation: 0 m_CharacterValidation: 0
m_RegexValue: '^[a-zA-Z0-9_- ]' m_RegexValue: '^[a-zA-Z0-9_- ]'
m_GlobalPointSize: 14 m_GlobalPointSize: 14
m_CharacterLimit: 20 m_CharacterLimit: 0
m_OnEndEdit: m_OnEndEdit:
m_PersistentCalls: m_PersistentCalls:
m_Calls: [] m_Calls: []
@@ -4150,7 +4150,7 @@ MonoBehaviour:
m_CharacterValidation: 0 m_CharacterValidation: 0
m_RegexValue: '^[a-zA-Z0-9_- ]' m_RegexValue: '^[a-zA-Z0-9_- ]'
m_GlobalPointSize: 14 m_GlobalPointSize: 14
m_CharacterLimit: 20 m_CharacterLimit: 0
m_OnEndEdit: m_OnEndEdit:
m_PersistentCalls: m_PersistentCalls:
m_Calls: [] m_Calls: []
@@ -4965,7 +4965,7 @@ MonoBehaviour:
m_CharacterValidation: 0 m_CharacterValidation: 0
m_RegexValue: '^[a-zA-Z0-9_- ]' m_RegexValue: '^[a-zA-Z0-9_- ]'
m_GlobalPointSize: 14 m_GlobalPointSize: 14
m_CharacterLimit: 20 m_CharacterLimit: 0
m_OnEndEdit: m_OnEndEdit:
m_PersistentCalls: m_PersistentCalls:
m_Calls: [] m_Calls: []
@@ -6450,17 +6450,17 @@ MonoBehaviour:
m_VerticalScrollbarEventHandler: {fileID: 0} m_VerticalScrollbarEventHandler: {fileID: 0}
m_LayoutGroup: {fileID: 0} m_LayoutGroup: {fileID: 0}
m_ScrollSensitivity: 1 m_ScrollSensitivity: 1
m_ContentType: 9 m_ContentType: 6
m_InputType: 0 m_InputType: 0
m_AsteriskChar: 42 m_AsteriskChar: 42
m_KeyboardType: 0 m_KeyboardType: 7
m_LineType: 0 m_LineType: 0
m_HideMobileInput: 0 m_HideMobileInput: 0
m_HideSoftKeyboard: 0 m_HideSoftKeyboard: 0
m_CharacterValidation: 6 m_CharacterValidation: 7
m_RegexValue: '^[a-zA-Z0-9 ]' m_RegexValue: '^[a-zA-Z0-9 ]'
m_GlobalPointSize: 14 m_GlobalPointSize: 14
m_CharacterLimit: 16 m_CharacterLimit: 0
m_OnEndEdit: m_OnEndEdit:
m_PersistentCalls: m_PersistentCalls:
m_Calls: [] m_Calls: []
@@ -13409,7 +13409,7 @@ MonoBehaviour:
m_CharacterValidation: 0 m_CharacterValidation: 0
m_RegexValue: '^[a-zA-Z0-9_- ]' m_RegexValue: '^[a-zA-Z0-9_- ]'
m_GlobalPointSize: 14 m_GlobalPointSize: 14
m_CharacterLimit: 20 m_CharacterLimit: 0
m_OnEndEdit: m_OnEndEdit:
m_PersistentCalls: m_PersistentCalls:
m_Calls: [] m_Calls: []
@@ -13714,17 +13714,17 @@ MonoBehaviour:
m_VerticalScrollbarEventHandler: {fileID: 0} m_VerticalScrollbarEventHandler: {fileID: 0}
m_LayoutGroup: {fileID: 0} m_LayoutGroup: {fileID: 0}
m_ScrollSensitivity: 1 m_ScrollSensitivity: 1
m_ContentType: 9 m_ContentType: 6
m_InputType: 0 m_InputType: 0
m_AsteriskChar: 42 m_AsteriskChar: 42
m_KeyboardType: 0 m_KeyboardType: 7
m_LineType: 0 m_LineType: 0
m_HideMobileInput: 0 m_HideMobileInput: 0
m_HideSoftKeyboard: 0 m_HideSoftKeyboard: 0
m_CharacterValidation: 6 m_CharacterValidation: 7
m_RegexValue: '^[a-zA-Z0-9 ]' m_RegexValue: '^[a-zA-Z0-9 ]'
m_GlobalPointSize: 14 m_GlobalPointSize: 14
m_CharacterLimit: 16 m_CharacterLimit: 0
m_OnEndEdit: m_OnEndEdit:
m_PersistentCalls: m_PersistentCalls:
m_Calls: [] m_Calls: []

View File

@@ -480,4 +480,4 @@ public class AccountMenu : MonoBehaviour
statusText.text = message; statusText.text = message;
statusText.color = color; statusText.color = color;
} }
} }

View File

@@ -8,7 +8,8 @@ public class ButtonToScene : MonoBehaviour
void Awake() void Awake()
{ {
gameObject.GetComponent<Button>().onClick.AddListener(async () => { gameObject.GetComponent<Button>().onClick.AddListener(async () =>
{
await SceneManager.LoadSceneAsync(sceneName); await SceneManager.LoadSceneAsync(sceneName);
}); });
} }

View File

@@ -25,6 +25,11 @@ public class GamePlayer : MonoBehaviour
private float nextUpdate; private float nextUpdate;
private float fps; private float fps;
public SpriteRenderer overlayRender; public SpriteRenderer overlayRender;
public GameObject leftArrow;
public GameObject rightArrow;
public GameObject jumpArrow;
public GameObject restartButton;
public GameObject backButton;
void Awake() void Awake()
{ {
@@ -81,14 +86,14 @@ public class GamePlayer : MonoBehaviour
PlayerPrefs.Save(); PlayerPrefs.Save();
backgroundMusic.volume = PlayerPrefs.GetFloat("musicVolume", 1f); backgroundMusic.volume = PlayerPrefs.GetFloat("musicVolume", 1f);
screenWidth = Camera.main.orthographicSize * 2f * Camera.main.aspect; screenWidth = Camera.main.orthographicSize * 2f * Camera.main.aspect;
highScoreText.text = $"High Score: {highscore}"; highScoreText.text = $"High Score: {Tools.FormatWithCommas(highscore)}";
if (Application.isMobilePlatform) if (Application.isMobilePlatform)
{ {
GameObject leftArrow = new("LeftArrow"); leftArrow = new("LeftArrow");
GameObject rightArrow = new("RightArrow"); rightArrow = new("RightArrow");
GameObject jumpArrow = new("JumpArrow"); jumpArrow = new("JumpArrow");
GameObject restartButton = new("RestartButton"); restartButton = new("RestartButton");
GameObject backButton = new("BackButton"); backButton = new("BackButton");
leftArrow.AddComponent<SpriteRenderer>(); leftArrow.AddComponent<SpriteRenderer>();
rightArrow.AddComponent<SpriteRenderer>(); rightArrow.AddComponent<SpriteRenderer>();
jumpArrow.AddComponent<SpriteRenderer>(); jumpArrow.AddComponent<SpriteRenderer>();
@@ -96,10 +101,15 @@ public class GamePlayer : MonoBehaviour
backButton.AddComponent<SpriteRenderer>(); backButton.AddComponent<SpriteRenderer>();
leftArrow.GetComponent<SpriteRenderer>().sprite = Resources.Load<Sprite>("Arrows/Arrow"); leftArrow.GetComponent<SpriteRenderer>().sprite = Resources.Load<Sprite>("Arrows/Arrow");
leftArrow.GetComponent<SpriteRenderer>().sortingOrder = 1000;
rightArrow.GetComponent<SpriteRenderer>().sprite = Resources.Load<Sprite>("Arrows/Arrow"); rightArrow.GetComponent<SpriteRenderer>().sprite = Resources.Load<Sprite>("Arrows/Arrow");
rightArrow.GetComponent<SpriteRenderer>().sortingOrder = 1000;
jumpArrow.GetComponent<SpriteRenderer>().sprite = Resources.Load<Sprite>("Arrows/Arrow"); jumpArrow.GetComponent<SpriteRenderer>().sprite = Resources.Load<Sprite>("Arrows/Arrow");
jumpArrow.GetComponent<SpriteRenderer>().sortingOrder = 1000;
restartButton.GetComponent<SpriteRenderer>().sprite = Resources.Load<Sprite>("Arrows/Restart"); restartButton.GetComponent<SpriteRenderer>().sprite = Resources.Load<Sprite>("Arrows/Restart");
restartButton.GetComponent<SpriteRenderer>().sortingOrder = 1000;
backButton.GetComponent<SpriteRenderer>().sprite = Resources.Load<Sprite>("Arrows/Back"); backButton.GetComponent<SpriteRenderer>().sprite = Resources.Load<Sprite>("Arrows/Back");
backButton.GetComponent<SpriteRenderer>().sortingOrder = 1000;
leftArrow.transform.rotation = UnityEngine.Quaternion.Euler(0f, 0f, 90f); leftArrow.transform.rotation = UnityEngine.Quaternion.Euler(0f, 0f, 90f);
rightArrow.transform.rotation = UnityEngine.Quaternion.Euler(0f, 0f, -90f); rightArrow.transform.rotation = UnityEngine.Quaternion.Euler(0f, 0f, -90f);
@@ -161,11 +171,6 @@ public class GamePlayer : MonoBehaviour
} }
if (Application.isMobilePlatform) if (Application.isMobilePlatform)
{ {
GameObject leftArrow = GameObject.Find("LeftArrow");
GameObject rightArrow = GameObject.Find("RightArrow");
GameObject jumpArrow = GameObject.Find("JumpArrow");
GameObject restartButton = GameObject.Find("RestartButton");
GameObject backButton = GameObject.Find("BackButton");
if (!Application.isMobilePlatform) if (!Application.isMobilePlatform)
{ {
if (Mouse.current.leftButton.isPressed) if (Mouse.current.leftButton.isPressed)
@@ -197,7 +202,8 @@ public class GamePlayer : MonoBehaviour
else else
{ {
var touches = UnityEngine.InputSystem.EnhancedTouch.Touch.activeTouches; var touches = UnityEngine.InputSystem.EnhancedTouch.Touch.activeTouches;
for (int i = 0; i < touches.Count; i++) { for (int i = 0; i < touches.Count; i++)
{
var pos = touches[i].screenPosition; var pos = touches[i].screenPosition;
UnityEngine.Vector3 clickPosition = Camera.main.ScreenToWorldPoint(new UnityEngine.Vector3(pos.x, pos.y, 0f)); UnityEngine.Vector3 clickPosition = Camera.main.ScreenToWorldPoint(new UnityEngine.Vector3(pos.x, pos.y, 0f));
clickPosition.z = 0f; clickPosition.z = 0f;
@@ -358,12 +364,6 @@ public class GamePlayer : MonoBehaviour
ClampPosition(screenWidth, bird); ClampPosition(screenWidth, bird);
if (Application.isMobilePlatform) if (Application.isMobilePlatform)
{ {
GameObject leftArrow = GameObject.Find("LeftArrow");
GameObject rightArrow = GameObject.Find("RightArrow");
GameObject jumpArrow = GameObject.Find("JumpArrow");
GameObject restartButton = GameObject.Find("RestartButton");
GameObject backButton = GameObject.Find("BackButton");
leftArrow.transform.position = new UnityEngine.Vector3(-screenWidth / 2.5f, -4f, 0f); leftArrow.transform.position = new UnityEngine.Vector3(-screenWidth / 2.5f, -4f, 0f);
rightArrow.transform.position = new UnityEngine.Vector3(screenWidth / 2.5f, -4f, 0f); rightArrow.transform.position = new UnityEngine.Vector3(screenWidth / 2.5f, -4f, 0f);
restartButton.transform.position = new UnityEngine.Vector3(screenWidth / 2.3f, Camera.main.orthographicSize - 1.2f, 0f); restartButton.transform.position = new UnityEngine.Vector3(screenWidth / 2.3f, Camera.main.orthographicSize - 1.2f, 0f);
@@ -534,13 +534,12 @@ public class GamePlayer : MonoBehaviour
} }
PlayerPrefs.SetString("HighScoreV2", highscore.ToString()); PlayerPrefs.SetString("HighScoreV2", highscore.ToString());
PlayerPrefs.Save(); PlayerPrefs.Save();
scoreText.text = "Score: " + score; scoreText.text = "Score: " + Tools.FormatWithCommas(score);
highScoreText.text = "High Score: " + highscore; highScoreText.text = "High Score: " + Tools.FormatWithCommas(highscore);
} }
void CheckIfGrounded() void CheckIfGrounded()
{ {
GameObject jumpArrow = GameObject.Find("JumpArrow");
isGrounded = bird.transform.position.y <= -4.1299996f; isGrounded = bird.transform.position.y <= -4.1299996f;
rb.gravityScale = isGrounded ? 0f : 1.5f; rb.gravityScale = isGrounded ? 0f : 1.5f;
@@ -594,4 +593,4 @@ public class GamePlayer : MonoBehaviour
Cursor.visible = true; Cursor.visible = true;
Cursor.lockState = CursorLockMode.None; Cursor.lockState = CursorLockMode.None;
} }
} }

View File

@@ -30,4 +30,4 @@ public class GamePlayerPauseMenu : MonoBehaviour
PlayerPrefs.Save(); PlayerPrefs.Save();
}); });
} }
} }

View File

@@ -214,4 +214,4 @@ public class Iconsmenu : MonoBehaviour
previewOverlay.sprite = Resources.Load<Sprite>("Icons/Overlays/overlay_" + overlayID); previewOverlay.sprite = Resources.Load<Sprite>("Icons/Overlays/overlay_" + overlayID);
} }
} }
} }

View File

@@ -70,6 +70,6 @@ public class LatestVersionText : MonoBehaviour
else if (latest == "-1") else if (latest == "-1")
text.text = "Latest: N/A"; text.text = "Latest: N/A";
else else
text.text = "Latest: " + latest; text.text = "Latest: v" + latest;
} }
} }

View File

@@ -53,8 +53,10 @@ public class LeaderboardsMenu : MonoBehaviour
{ {
UpdateStatus(false); UpdateStatus(false);
string response = request.downloadHandler.text; string response = request.downloadHandler.text;
foreach (var entry in response.Split(";")) var splitResponse = response.Split(';');
for (int i = 0; i < splitResponse.Length; i++)
{ {
var entry = splitResponse[i];
var split = entry.Split(":"); var split = entry.Split(":");
var username = Encoding.UTF8.GetString(Convert.FromBase64String(split[0])); var username = Encoding.UTF8.GetString(Convert.FromBase64String(split[0]));
var highScore = split[1]; var highScore = split[1];
@@ -68,8 +70,8 @@ public class LeaderboardsMenu : MonoBehaviour
var playerOverlayIcon = playerIcon.transform.GetChild(0).GetComponent<Image>(); var playerOverlayIcon = playerIcon.transform.GetChild(0).GetComponent<Image>();
var highScoreText = entryInfo.transform.GetChild(1).GetComponent<TMP_Text>(); var highScoreText = entryInfo.transform.GetChild(1).GetComponent<TMP_Text>();
usernameText.text = username; usernameText.text = $"{username} (#{i + 1})";
highScoreText.text += highScore; highScoreText.text += Tools.FormatWithCommas(highScore);
playerIcon.sprite = Resources.Load<Sprite>("Icons/Icons/bird_" + icon); playerIcon.sprite = Resources.Load<Sprite>("Icons/Icons/bird_" + icon);
if (icon == "1") if (icon == "1")
{ {

View File

@@ -100,4 +100,4 @@ public class LoadingMenu : MonoBehaviour
PlayerPrefs.SetInt(key, value); PlayerPrefs.SetInt(key, value);
} }
} }
} }

View File

@@ -26,4 +26,4 @@ public class MenuScript : MonoBehaviour
}); });
} }
} }
} }

View File

@@ -1,4 +1,5 @@
using UnityEngine; using System.Numerics;
using UnityEngine;
public static class Tools public static class Tools
{ {
@@ -15,9 +16,27 @@ public static class Tools
else if (user == 4) else if (user == 4)
{ {
return Resources.Load<Sprite>("Icons/Icons/bird_-3"); return Resources.Load<Sprite>("Icons/Icons/bird_-3");
} else }
else
{ {
return Resources.Load<Sprite>("Icons/Icons/bird_1"); return Resources.Load<Sprite>("Icons/Icons/bird_1");
} }
} }
public static string FormatWithCommas(string number)
{
try
{
return FormatWithCommas(BigInteger.Parse(number));
}
catch
{
return number;
}
}
public static string FormatWithCommas(BigInteger number)
{
return string.Format("{0:N0}", number);
}
} }

View File

@@ -11,5 +11,9 @@ public class VersionText : MonoBehaviour
{ {
text.text = "Current: v" + Application.version; text.text = "Current: v" + Application.version;
} }
else
{
text.text = "v" + Application.version;
}
} }
} }

View File

@@ -17,7 +17,7 @@ PlayerSettings:
defaultCursor: {fileID: 0} defaultCursor: {fileID: 0}
cursorHotspot: {x: 0, y: 0} cursorHotspot: {x: 0, y: 0}
m_SplashScreenBackgroundColor: {r: 0.09411765, g: 0.09411765, b: 0.09411765, a: 1} m_SplashScreenBackgroundColor: {r: 0.09411765, g: 0.09411765, b: 0.09411765, a: 1}
m_ShowUnitySplashScreen: 1 m_ShowUnitySplashScreen: 0
m_ShowUnitySplashLogo: 1 m_ShowUnitySplashLogo: 1
m_SplashScreenOverlayOpacity: 1 m_SplashScreenOverlayOpacity: 1
m_SplashScreenAnimation: 1 m_SplashScreenAnimation: 1
@@ -140,7 +140,7 @@ PlayerSettings:
loadStoreDebugModeEnabled: 0 loadStoreDebugModeEnabled: 0
visionOSBundleVersion: 1.0 visionOSBundleVersion: 1.0
tvOSBundleVersion: 1.0 tvOSBundleVersion: 1.0
bundleVersion: 1.4.0 bundleVersion: 1.4.1
preloadedAssets: preloadedAssets:
- {fileID: -944628639613478452, guid: 2bcd2660ca9b64942af0de543d8d7100, type: 3} - {fileID: -944628639613478452, guid: 2bcd2660ca9b64942af0de543d8d7100, type: 3}
metroInputSource: 0 metroInputSource: 0