From 8480bbc0f71a869aff5e222ff612854e66f06ac2 Mon Sep 17 00:00:00 2001 From: Lncvrt Date: Sat, 24 Jan 2026 16:31:36 -0700 Subject: [PATCH] Fix game player not working with custom icons --- Assets/Scenes/CustomGamePlayer.unity | 2 +- Assets/Scenes/GamePlayer.unity | 2 +- Assets/Scripts/CustomGamePlayer.cs | 44 +++++++++++++++------------- Assets/Scripts/CustomIconLoader.cs | 3 +- Assets/Scripts/GamePlayer.cs | 44 +++++++++++++++------------- 5 files changed, 52 insertions(+), 43 deletions(-) diff --git a/Assets/Scenes/CustomGamePlayer.unity b/Assets/Scenes/CustomGamePlayer.unity index 5db5f06..54d4ed2 100644 --- a/Assets/Scenes/CustomGamePlayer.unity +++ b/Assets/Scenes/CustomGamePlayer.unity @@ -3891,7 +3891,7 @@ SpriteRenderer: m_SortingLayer: 0 m_SortingOrder: 0 m_MaskInteraction: 0 - m_Sprite: {fileID: 6534417478244952628, guid: dbf71fe5f2caad1409da64bdbb781eb5, type: 3} + m_Sprite: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_FlipX: 0 m_FlipY: 0 diff --git a/Assets/Scenes/GamePlayer.unity b/Assets/Scenes/GamePlayer.unity index aeb731f..fcc18eb 100644 --- a/Assets/Scenes/GamePlayer.unity +++ b/Assets/Scenes/GamePlayer.unity @@ -4567,7 +4567,7 @@ SpriteRenderer: m_SortingLayer: 0 m_SortingOrder: 0 m_MaskInteraction: 0 - m_Sprite: {fileID: 6534417478244952628, guid: dbf71fe5f2caad1409da64bdbb781eb5, type: 3} + m_Sprite: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_FlipX: 0 m_FlipY: 0 diff --git a/Assets/Scripts/CustomGamePlayer.cs b/Assets/Scripts/CustomGamePlayer.cs index 07a6516..b42487f 100644 --- a/Assets/Scripts/CustomGamePlayer.cs +++ b/Assets/Scripts/CustomGamePlayer.cs @@ -70,7 +70,7 @@ public class CustomGamePlayer : MonoBehaviour ); var customIconData = BazookaManager.Instance.GetCustomBirdIconData(); - SpriteRenderer component = bird.GetComponent(); + SpriteRenderer birdRender = bird.GetComponent(); if (customIconData.Selected == null) { var birdColor = BazookaManager.Instance.GetColorSettingIcon(); @@ -86,51 +86,55 @@ public class CustomGamePlayer : MonoBehaviour int.Parse(overlayColor[2].ToString()) / 255f ); - int num = BazookaManager.Instance.GetBirdIcon(); - int num2 = BazookaManager.Instance.GetBirdOverlay(); - if (num == 1) + int icon = BazookaManager.Instance.GetBirdIcon(); + int iconOverlay = BazookaManager.Instance.GetBirdOverlay(); + if (icon == 1) { - component.sprite = Tools.GetIconForUser(BazookaManager.Instance.GetAccountID() ?? 0); + birdRender.sprite = Tools.GetIconForUser(BazookaManager.Instance.GetAccountID() ?? 0); } else { - component.sprite = Resources.Load("Icons/Icons/bird_" + num); + birdRender.sprite = Resources.Load("Icons/Icons/bird_" + icon); } - if (num2 == 8) + if (iconOverlay == 8) { - overlayRender.sprite = Resources.Load("Icons/Overlays/overlay_" + num2); + overlayRender.sprite = Resources.Load("Icons/Overlays/overlay_" + iconOverlay); overlayRender.transform.localPosition = new UnityEngine.Vector3(-0.37f, 0.32f, 0f); } - else if (num2 == 11) + else if (iconOverlay == 11) { - overlayRender.sprite = Resources.Load("Icons/Overlays/overlay_" + num2); + overlayRender.sprite = Resources.Load("Icons/Overlays/overlay_" + iconOverlay); overlayRender.transform.localScale = new UnityEngine.Vector3(1.1f, 1.1f, 1.1f); //yea i didnt feel like doing it for all lmao overlayRender.transform.localPosition = new UnityEngine.Vector3(-0.3141809f, 0.4324968f, 0f); } - else if (num2 == 13) + else if (iconOverlay == 13) { - overlayRender.sprite = Resources.Load("Icons/Overlays/overlay_" + num2); + overlayRender.sprite = Resources.Load("Icons/Overlays/overlay_" + iconOverlay); overlayRender.transform.localPosition = new UnityEngine.Vector3(-0.3559977f, 0.3179995f, 0f); } else { - overlayRender.sprite = Resources.Load("Icons/Overlays/overlay_" + num2); + overlayRender.sprite = Resources.Load("Icons/Overlays/overlay_" + iconOverlay); } - if (component.sprite == null) + if (birdRender.sprite == null) { - component.sprite = Resources.Load("Icons/Icons/bird_1"); + birdRender.sprite = Resources.Load("Icons/Icons/bird_1"); BazookaManager.Instance.SetBirdIcon(1); } - if (overlayRender.sprite == null && num2 != 0) + if (overlayRender.sprite == null && iconOverlay != 0) { overlayRender.sprite = Resources.Load("Icons/Overlays/overlay_1"); BazookaManager.Instance.SetBirdOverlay(1); } } - // else if (customIconData.Selected != null) - // foreach (var icon in customIconData.Purchased) - // if (icon == customIconData.Selected) - // Tools.RenderFromBase64(icon, component); + else if (customIconData.Selected != null) + foreach (var icon in customIconData.Purchased) + if (icon == customIconData.Selected) + { + var waitingForCustomIcon = birdRender.gameObject.AddComponent(); + waitingForCustomIcon.ID = customIconData.Selected; + CustomIconLoader.Init(new[] { waitingForCustomIcon }); + } lastMoveTime = Time.time; UnityEngine.InputSystem.EnhancedTouch.EnhancedTouchSupport.Enable(); diff --git a/Assets/Scripts/CustomIconLoader.cs b/Assets/Scripts/CustomIconLoader.cs index cda778e..cca72d8 100644 --- a/Assets/Scripts/CustomIconLoader.cs +++ b/Assets/Scripts/CustomIconLoader.cs @@ -40,7 +40,8 @@ public class CustomIconLoader : MonoBehaviour var cachedIcon = BazookaManager.Instance.iconCache.FirstOrDefault(icon => icon.ID == obj.ID); if (cachedIcon != null) { - Tools.RenderFromBase64(Tools.FixIconData(cachedIcon.Data).Item1, obj.GetComponent()); + try { Tools.RenderFromBase64(Tools.FixIconData(cachedIcon.Data).Item1, obj.GetComponent()); } + catch { Tools.RenderFromBase64(Tools.FixIconData(cachedIcon.Data).Item1, obj.GetComponent()); } } Destroy(obj); } diff --git a/Assets/Scripts/GamePlayer.cs b/Assets/Scripts/GamePlayer.cs index 65fcc1f..0d2bda8 100644 --- a/Assets/Scripts/GamePlayer.cs +++ b/Assets/Scripts/GamePlayer.cs @@ -58,7 +58,7 @@ public class GamePlayer : MonoBehaviour ); var customIconData = BazookaManager.Instance.GetCustomBirdIconData(); - SpriteRenderer component = bird.GetComponent(); + SpriteRenderer birdRender = bird.GetComponent(); if (customIconData.Selected == null) { var birdColor = BazookaManager.Instance.GetColorSettingIcon(); @@ -74,51 +74,55 @@ public class GamePlayer : MonoBehaviour int.Parse(overlayColor[2].ToString()) / 255f ); - int num = BazookaManager.Instance.GetBirdIcon(); - int num2 = BazookaManager.Instance.GetBirdOverlay(); - if (num == 1) + int icon = BazookaManager.Instance.GetBirdIcon(); + int iconOverlay = BazookaManager.Instance.GetBirdOverlay(); + if (icon == 1) { - component.sprite = Tools.GetIconForUser(BazookaManager.Instance.GetAccountID() ?? 0); + birdRender.sprite = Tools.GetIconForUser(BazookaManager.Instance.GetAccountID() ?? 0); } else { - component.sprite = Resources.Load("Icons/Icons/bird_" + num); + birdRender.sprite = Resources.Load("Icons/Icons/bird_" + icon); } - if (num2 == 8) + if (iconOverlay == 8) { - overlayRender.sprite = Resources.Load("Icons/Overlays/overlay_" + num2); + overlayRender.sprite = Resources.Load("Icons/Overlays/overlay_" + iconOverlay); overlayRender.transform.localPosition = new UnityEngine.Vector3(-0.37f, 0.32f, 0f); } - else if (num2 == 11) + else if (iconOverlay == 11) { - overlayRender.sprite = Resources.Load("Icons/Overlays/overlay_" + num2); + overlayRender.sprite = Resources.Load("Icons/Overlays/overlay_" + iconOverlay); overlayRender.transform.localScale = new UnityEngine.Vector3(1.1f, 1.1f, 1.1f); //yea i didnt feel like doing it for all lmao overlayRender.transform.localPosition = new UnityEngine.Vector3(-0.3141809f, 0.4324968f, 0f); } - else if (num2 == 13) + else if (iconOverlay == 13) { - overlayRender.sprite = Resources.Load("Icons/Overlays/overlay_" + num2); + overlayRender.sprite = Resources.Load("Icons/Overlays/overlay_" + iconOverlay); overlayRender.transform.localPosition = new UnityEngine.Vector3(-0.3559977f, 0.3179995f, 0f); } else { - overlayRender.sprite = Resources.Load("Icons/Overlays/overlay_" + num2); + overlayRender.sprite = Resources.Load("Icons/Overlays/overlay_" + iconOverlay); } - if (component.sprite == null) + if (birdRender.sprite == null) { - component.sprite = Resources.Load("Icons/Icons/bird_1"); + birdRender.sprite = Resources.Load("Icons/Icons/bird_1"); BazookaManager.Instance.SetBirdIcon(1); } - if (overlayRender.sprite == null && num2 != 0) + if (overlayRender.sprite == null && iconOverlay != 0) { overlayRender.sprite = Resources.Load("Icons/Overlays/overlay_1"); BazookaManager.Instance.SetBirdOverlay(1); } } - // else if (customIconData.Selected != null) - // foreach (var icon in customIconData.Purchased) - // if (icon == customIconData.Selected) - // Tools.RenderFromBase64(icon, component); + else if (customIconData.Selected != null) + foreach (var icon in customIconData.Purchased) + if (icon == customIconData.Selected) + { + var waitingForCustomIcon = birdRender.gameObject.AddComponent(); + waitingForCustomIcon.ID = customIconData.Selected; + CustomIconLoader.Init(new[] { waitingForCustomIcon }); + } lastMoveTime = Time.time; UnityEngine.InputSystem.EnhancedTouch.EnhancedTouchSupport.Enable();