From 3941b2d3b0bb43c27329c945eebb0782862b0f58 Mon Sep 17 00:00:00 2001 From: kimura Date: Thu, 9 Dec 2021 16:25:29 +0900 Subject: [PATCH] =?UTF-8?q?=E5=A4=A7=E9=87=8F=E6=B3=A8=E6=96=87=E8=AA=BF?= =?UTF-8?q?=E7=90=86=E5=BE=8C=E3=81=AE=E3=83=80=E3=82=A4=E3=82=A2=E3=83=AD?= =?UTF-8?q?=E3=82=B0=E8=A1=A8=E7=A4=BA=E5=AF=BE=E5=BF=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Scenes/Main/Scripts/KitchenManager.cs | 92 ++++++++----------- 1 file changed, 40 insertions(+), 52 deletions(-) diff --git a/popcorn/Assets/MyGame/Scenes/Main/Scripts/KitchenManager.cs b/popcorn/Assets/MyGame/Scenes/Main/Scripts/KitchenManager.cs index 58be19e5..637bc7dd 100644 --- a/popcorn/Assets/MyGame/Scenes/Main/Scripts/KitchenManager.cs +++ b/popcorn/Assets/MyGame/Scenes/Main/Scripts/KitchenManager.cs @@ -172,14 +172,31 @@ public class KitchenManager : MonoBehaviour orderIndicatorView.SetBadgeActive(false); } - orderIndicatorView.SetIndicate(result.result, achieved || cancelled); - if (result.result) + orderIndicatorView.SetIndicate(result.newOrder, achieved || cancelled); + if (LocalCacheManager.Load(Const.ProductViewTypeTag, ProductViewType.Default) == ProductViewType.BulkOrder) + { + BulkOrderShowDialogWithSetup(); + } + + if (!result.newOrder) + { + if (gameData.OrderIdInProgress != gameData.CancelOrderId) + { + orderIndicatorView.TappedPhone + .ThrottleFirst(TimeSpan.FromSeconds(1f)) + .Subscribe(_ => + { + BulkOrderShowDialogWithSetup(); + }).AddTo(this); + } + } + else { SoundManager.Instance.StopSE("se_Main_phone_sound"); var messageList = SpreadsheetDataManager.Instance.GetBaseDataList(Const.BulkOrderTextDataSheet); var nextMessageList = messageList.Where(data => data.shopLevel == result.nextOrderLevel).ToList(); - orderIndicatorView.TappedPhone.ThrottleFirst(TimeSpan.FromSeconds(1f)).Take(1).Subscribe(_ => + orderIndicatorView.TappedPhone.Take(1).Subscribe(_ => { // タップで更新 gameData.CompletedProductList.Clear(); @@ -193,74 +210,45 @@ public class KitchenManager : MonoBehaviour { gameData.OrderTextId = nextMessageList.First().id; } + GameDataManager.SaveGameData(); var orderData = bulkOrderList.First(data => data.id == result.nextOrderId); LocalCacheManager.Save(BulkOrder.DataTag, orderData); - BulkOrderNotifyView.ShowDialog(() => - { - BulkOrder.ShowDialog( - onAchieved: () => - { - orderIndicatorView.SetIndicate(false, true); - orderIndicatorView.SetBadgeActive(false); - }, - onCancel: () => - { - orderIndicatorView.SetIndicate(false, true); - orderIndicatorView.SetBadgeActive(false); - }); - }); - + BulkOrderNotifyView.ShowDialog(BulkOrderShowDialogWithSetup); + // 通知をタップ後タップ動作を切り替える orderIndicatorView.SetIndicate(false, false); orderIndicatorView.TappedPhone .ThrottleFirst(TimeSpan.FromSeconds(1f)) .Subscribe(__ => { - BulkOrder.ShowDialog( - onAchieved: () => - { - orderIndicatorView.SetIndicate(false, true); - orderIndicatorView.SetBadgeActive(false); - }, - onCancel: () => - { - orderIndicatorView.SetIndicate(false, true); - orderIndicatorView.SetBadgeActive(false); - }); + BulkOrderShowDialogWithSetup(); }).AddTo(this); }).AddTo(this); } - else - { - if (gameData.OrderIdInProgress != gameData.CancelOrderId) - { - orderIndicatorView.TappedPhone - .ThrottleFirst(TimeSpan.FromSeconds(1f)) - .Subscribe(_ => - { - BulkOrder.ShowDialog( - onAchieved: () => - { - orderIndicatorView.SetIndicate(false, true); - orderIndicatorView.SetBadgeActive(false); - }, - onCancel: () => - { - orderIndicatorView.SetIndicate(false, true); - orderIndicatorView.SetBadgeActive(false); - }); - }).AddTo(this); - } - } #if UNITY_EDITOR Market.StockFlavorLog(); #endif } - private (bool result, int nextOrderId, int nextOrderLevel) CheckBulkOrder() + private void BulkOrderShowDialogWithSetup() + { + BulkOrder.ShowDialog( + onAchieved: () => + { + orderIndicatorView.SetIndicate(false, true); + orderIndicatorView.SetBadgeActive(false); + }, + onCancel: () => + { + orderIndicatorView.SetIndicate(false, true); + orderIndicatorView.SetBadgeActive(false); + }); + } + + private (bool newOrder, int nextOrderId, int nextOrderLevel) CheckBulkOrder() { var gameData = GameDataManager.GameData; var nextOrderLevel = 0;