キッチン大量注文通知修正

This commit is contained in:
kimura 2022-11-14 17:55:54 +09:00
parent fe2b405950
commit d5dce6d722
1 changed files with 26 additions and 33 deletions

View File

@ -38,8 +38,6 @@ public class KitchenManager : MonoBehaviour
SoundManager.Instance.PlayBGM("bgm_Main"); SoundManager.Instance.PlayBGM("bgm_Main");
globalGameData = GameDataManager.GameData; globalGameData = GameDataManager.GameData;
cityGameData = GameDataManager.GetCurrentCityGameData(); cityGameData = GameDataManager.GetCurrentCityGameData();
// globalGameData.CustomizeCoinElapsed = Int32.MaxValue / 2;
// PartTimerManager.Instance.UpdateList();
var cityDataList = SpreadsheetDataManager.Instance.GetBaseDataList<CityData>(Const.CityDataSheet); var cityDataList = SpreadsheetDataManager.Instance.GetBaseDataList<CityData>(Const.CityDataSheet);
var cityData = cityDataList.First(data => data.id == GameDataManager.GameData.CurrentCityId); var cityData = cityDataList.First(data => data.id == GameDataManager.GameData.CurrentCityId);
@ -100,14 +98,10 @@ public class KitchenManager : MonoBehaviour
} }
else else
{ {
CheckOrderAndSetPhoneTap(); orderIndicatorView.SetBadgeActive(false);
} var hasNewOrder = CheckOrderAndSetPhoneTap();
// バイト有効時は自動調理と大量注文が非表示 if (!hasNewOrder)
partTimerButtonView.gameObject.SetActive(isPartTimer); {
orderIndicatorView.gameObject.SetActive(!isPartTimer);
autoCookView.SetActive(!isPartTimer && globalGameData.ViewedShopLevel >= Const.AutoCookAvailableLevel);
kitchenView.SetActive(!isPartTimer);
// 大量注文達成通知 // 大量注文達成通知
var bulkOrderList = SpreadsheetDataManager.Instance.GetBaseDataList<BulkOrderData>(Const.BulkOrderDataSheet); var bulkOrderList = SpreadsheetDataManager.Instance.GetBaseDataList<BulkOrderData>(Const.BulkOrderDataSheet);
if (bulkOrderList.FirstOrDefault(data => data.id == cityGameData.OrderIdInProgress) is { } bulkOrderData) if (bulkOrderList.FirstOrDefault(data => data.id == cityGameData.OrderIdInProgress) is { } bulkOrderData)
@ -117,12 +111,20 @@ public class KitchenManager : MonoBehaviour
var cancelled = cityGameData.OrderIdInProgress == cityGameData.CancelOrderId; var cancelled = cityGameData.OrderIdInProgress == cityGameData.CancelOrderId;
orderIndicatorView.SetBadgeActive(completed && !achieved && !cancelled); orderIndicatorView.SetBadgeActive(completed && !achieved && !cancelled);
orderIndicatorView.SetIndicate(false, achieved || cancelled); orderIndicatorView.SetIndicate(false, achieved || cancelled);
if (!cancelled) SetPhoneTap();
} }
else else
{ {
orderIndicatorView.SetBadgeActive(false); orderIndicatorView.SetBadgeActive(false);
orderIndicatorView.SetIndicate(false, true); orderIndicatorView.SetIndicate(false, true);
} }
}
}
// バイト有効時は自動調理と大量注文が非表示
partTimerButtonView.gameObject.SetActive(isPartTimer);
orderIndicatorView.gameObject.SetActive(!isPartTimer);
autoCookView.SetActive(!isPartTimer && globalGameData.ViewedShopLevel >= Const.AutoCookAvailableLevel);
kitchenView.SetActive(!isPartTimer);
// 大量注文の調理から戻ってきたときにダイアログ開く // 大量注文の調理から戻ってきたときにダイアログ開く
if (LocalCacheManager.Load(Const.ProductViewTypeTag, ProductViewType.Default) == ProductViewType.BulkOrder) if (LocalCacheManager.Load(Const.ProductViewTypeTag, ProductViewType.Default) == ProductViewType.BulkOrder)
@ -368,21 +370,12 @@ public class KitchenManager : MonoBehaviour
} }
// 大量注文タップ時の挙動設定 // 大量注文タップ時の挙動設定
private void CheckOrderAndSetPhoneTap() private bool CheckOrderAndSetPhoneTap()
{
if (BulkOrder.CheckBulkOrder() is { } nextOrderData)
{ {
if (BulkOrder.CheckBulkOrder() is not { } nextOrderData) return false;
orderIndicatorView.SetIndicate(true, false); orderIndicatorView.SetIndicate(true, false);
SetPhoneTap(nextOrderData); SetPhoneTap(nextOrderData);
return; return true;
}
var cancelled = cityGameData.OrderIdInProgress == cityGameData.CancelOrderId;
if (cancelled)
{
return;
}
SetPhoneTap();
} }
private void SetPhoneTap(BulkOrderData nextOrderData = null) private void SetPhoneTap(BulkOrderData nextOrderData = null)