diff --git a/popcorn/Assets/MyGame/Scenes/Main/EarningsReport.unity b/popcorn/Assets/MyGame/Scenes/Main/EarningsReport.unity index 9baee412..0702d6b4 100644 --- a/popcorn/Assets/MyGame/Scenes/Main/EarningsReport.unity +++ b/popcorn/Assets/MyGame/Scenes/Main/EarningsReport.unity @@ -1263,6 +1263,9 @@ MonoBehaviour: coinText: {fileID: 3565416525567727735} heartText: {fileID: 3565416527223446235} shopCustomizeCoinText: {fileID: 3565416527311284399} + shopCustomizeObject: {fileID: 1127196281} + coinIcon: {fileID: 3565416525613993359} + heartIcon: {fileID: 3565416525515160863} --- !u!1 &3565416526696996279 GameObject: m_ObjectHideFlags: 0 diff --git a/popcorn/Assets/MyGame/Scenes/Main/Scripts/EarningsReportDialog.cs b/popcorn/Assets/MyGame/Scenes/Main/Scripts/EarningsReportDialog.cs index b60b0910..3dd80e9a 100644 --- a/popcorn/Assets/MyGame/Scenes/Main/Scripts/EarningsReportDialog.cs +++ b/popcorn/Assets/MyGame/Scenes/Main/Scripts/EarningsReportDialog.cs @@ -20,10 +20,13 @@ namespace MyGame.Scenes.Main.Scripts [SerializeField] private Text coinText; [SerializeField] private Text heartText; [SerializeField] private Text shopCustomizeCoinText; + [SerializeField] private GameObject shopCustomizeObject; + [SerializeField] private Transform coinIcon; + [SerializeField] private Transform heartIcon; private void Start() { - var onClose = LocalCacheManager.Load(CallbackTag, default); + var onClose = LocalCacheManager.Load>(CallbackTag, default); LocalCacheManager.Remove(CallbackTag); var cityGameData = GameDataManager.GetCurrentCityGameData(); @@ -33,10 +36,11 @@ namespace MyGame.Scenes.Main.Scripts coinText.text = coin.ToString(); heartText.text = heart.ToString(); shopCustomizeCoinText.text = 0.ToString(); + shopCustomizeObject.SetActive(false); closeButton.OnClickAsObservable().Take(1).Subscribe(_ => { - onClose?.Invoke(); + onClose?.Invoke(coinIcon.position, heartIcon.position); transform.parent.SetLocalScale(0); backgroundAnimator.SetTrigger(CloseTrigger); this.CallWaitForSeconds(.25f, () => @@ -46,7 +50,7 @@ namespace MyGame.Scenes.Main.Scripts }).AddTo(this); } - public static void ShowDialog(Action onClose = null) + public static void ShowDialog(Action onClose = null) { LocalCacheManager.Save(CallbackTag, onClose); TransitionManager.Instance.LoadSceneAdditive(SceneName); diff --git a/popcorn/Assets/MyGame/Scenes/Main/Scripts/KitchenManager.cs b/popcorn/Assets/MyGame/Scenes/Main/Scripts/KitchenManager.cs index c1bfe0de..f94df1aa 100644 --- a/popcorn/Assets/MyGame/Scenes/Main/Scripts/KitchenManager.cs +++ b/popcorn/Assets/MyGame/Scenes/Main/Scripts/KitchenManager.cs @@ -76,13 +76,16 @@ public class KitchenManager : MonoBehaviour var partTimerElapsed = cityGameData.PartTimerElapsed; if (partTimerElapsed > 10) { - EarningsReportDialog.ShowDialog(() => + EarningsReportDialog.ShowDialog((coinPos, heartPos) => { var partTimerData = partTimersData.First(data => data.level == cityGameData.PartTimerLevel); var (coin, heart) = PartTimerManager.CalcEarnings(partTimerData, partTimerElapsed); - HeartMeter.Instance.AddHeart(heart); - cityGameData.Heart += heart; - CoinManager.Instance.AddCoin(coin); + cityGameData.WaitAddHeart += heart; + HeartMeter.Instance.AddHeartForBulkOrder(heartPos, () => + { + cityGameData.MoveHeart(heart); + }); + CoinManager.Instance.AddCoinForBulkOrder(coin, coinPos); cityGameData.Coin = CoinManager.Instance.OwnCoin; cityGameData.PartTimerElapsed -= partTimerElapsed; GameDataManager.SaveGameData();