diff --git a/popcorn/Assets/MyGame/Scenes/Main/Scripts/BulkOrder.cs b/popcorn/Assets/MyGame/Scenes/Main/Scripts/BulkOrder.cs index d7601977..0cd43250 100644 --- a/popcorn/Assets/MyGame/Scenes/Main/Scripts/BulkOrder.cs +++ b/popcorn/Assets/MyGame/Scenes/Main/Scripts/BulkOrder.cs @@ -213,19 +213,23 @@ public class BulkOrder : MonoBehaviour */ var cityGameData = GameDataManager.GetCurrentCityGameData(); var nextOrderLevel = cityGameData.AchievedOrderLevel + 1; + var bulkOrderList = GetCityOrderList(GameDataManager.GameData.CurrentCityId); + if (bulkOrderList.FirstOrDefault(data => data.shopLevel >= nextOrderLevel) is {} sampleNextOrder) + { + nextOrderLevel = sampleNextOrder.shopLevel; + } if (cityGameData.ViewedShopLevel < nextOrderLevel) { return null; } - var bulkOrderList = GetCityOrderList(GameDataManager.GameData.CurrentCityId); - if (!bulkOrderList.Exists(data => data.shopLevel == nextOrderLevel)) + var nextOrderList = bulkOrderList.Where(data => data.shopLevel == nextOrderLevel).ToList(); + if (nextOrderList.Count == 0) { return null; } - var nextOrderList = bulkOrderList.Where(data => data.shopLevel == nextOrderLevel).ToList(); var firstTime = !nextOrderList.Exists(data => data.id == cityGameData.OrderIdInProgress); var achieved = cityGameData.DeliveredOrder.Contains(cityGameData.OrderIdInProgress); - var canceled = cityGameData.OrderIdInProgress == cityGameData.CancelOrderId; + var canceled = cityGameData.OrderIdInProgress != 0 && cityGameData.OrderIdInProgress == cityGameData.CancelOrderId; #if UNITY_EDITOR Debug.Log("delivered:"+cityGameData.DeliveredOrder.Aggregate(string.Empty, (s, data) => $"{s}, {data}")); Debug.Log($@"CheckBulkOrder NextOrder @@ -247,7 +251,7 @@ next: {nextOrderList.Aggregate(string.Empty, (s, data) => $"{s}, {data.shopLevel // オーダーリストがすべて達成済みの場合エラー Debug.LogError( $@"大量注文レベル{nextOrderLevel}に受けられるオーダーがありませんデータを確認してください -orderCount:{nextOrderList.Count} maxOrder:{nextOrderList[0].maxOrder} +orderCount:{nextOrderList.Count} maxOrder:{nextOrderList[0]?.maxOrder} orderList:{nextOrderList.Aggregate(string.Empty, (s, data) => $"{s}, {data.id}")} delivered:{cityGameData.DeliveredOrder.Aggregate(string.Empty, (s, data) => $"{s}, {data}")} "); diff --git a/popcorn/Assets/MyGame/Scenes/marketing/Scripts/ShopCustomize.cs b/popcorn/Assets/MyGame/Scenes/marketing/Scripts/ShopCustomize.cs index a2d74dc8..d1902571 100644 --- a/popcorn/Assets/MyGame/Scenes/marketing/Scripts/ShopCustomize.cs +++ b/popcorn/Assets/MyGame/Scenes/marketing/Scripts/ShopCustomize.cs @@ -86,7 +86,7 @@ myItems {string.Join(",", gameData.ShopCustomizeMyItems.Select(x => x.ToString() { if (item != selectedItem) { - selectedItem.SetState(ShopCustomizeItemState.Purchased); + selectedItem?.SetState(ShopCustomizeItemState.Purchased); selectedItem = item; } item.SetState(ShopCustomizeItemState.Selected);