From 02ba3c8c68f501f0c401f953db973d68e69bdd5c Mon Sep 17 00:00:00 2001 From: kimura Date: Fri, 1 Oct 2021 14:14:08 +0900 Subject: [PATCH] =?UTF-8?q?=E3=83=9D=E3=83=83=E3=83=97=E3=82=B3=E3=83=BC?= =?UTF-8?q?=E3=83=B3=E8=B2=A9=E5=A3=B2=E6=95=B0=E3=81=AE=E4=BF=9D=E5=AD=98?= =?UTF-8?q?=E5=87=A6=E7=90=86=E8=BF=BD=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../MyGame/Scenes/marketing/Scripts/Market.cs | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/popcorn/Assets/MyGame/Scenes/marketing/Scripts/Market.cs b/popcorn/Assets/MyGame/Scenes/marketing/Scripts/Market.cs index b98bbb2b..4bbf4016 100644 --- a/popcorn/Assets/MyGame/Scenes/marketing/Scripts/Market.cs +++ b/popcorn/Assets/MyGame/Scenes/marketing/Scripts/Market.cs @@ -138,8 +138,8 @@ public class Market : MonoBehaviour if (gameData.ShopStock.Count == 0) { shopState.Value = ShopState.Close; - } - var coin = 0; + } + var orders = new List(); var dontBuyCustomerList = new List(); foreach (var controller in customers) @@ -178,12 +178,12 @@ public class Market : MonoBehaviour } // 購入 - var flavors = orders.Select(x => (displayFlavors[x], 0)).ToList(); + var flavors = orders.Select(x => (displayFlavors[x], ProductRarity.Normal)).ToList(); #if UNITY_EDITOR Debug.Log($"bb order: {orders.Count} {orders.Aggregate("", (s, i) => $"{s},{i}")}"); Debug.Log($"bb shuffledOrder:{shuffledOrder.Count} {shuffledOrder.Aggregate("", (s, i) => $"{s},{i}")}"); #endif - coin += SellPopcorn(flavors); + var coin = SellPopcorn(flavors); var remainStockCount = gameData.ShopStock.Count; // 自動補充 refill @@ -457,7 +457,7 @@ public class Market : MonoBehaviour }).AddTo(this); } - private int SellPopcorn(List<(int flavor, int bonusRate)> flavors) + private int SellPopcorn(List<(int flavor, ProductRarity rarity)> flavors) { var gameData = GameDataManager.GameData; // 品切れ @@ -467,14 +467,17 @@ public class Market : MonoBehaviour } // フレーバーを売る + var recipeList = RecipeData.GetAllRecipe(); + var rarityList = SpreadsheetDataManager.Instance.GetBaseDataList(Const.RarityDataSheet); var coin = 0; foreach (var flavorData in flavors) { var targetIndex = gameData.ShopStock.FindIndex(x => x == flavorData.flavor); - var flavorRecipe = RecipeData.GetAllRecipe().First(x => x.RecipeId == gameData.ShopStock[targetIndex]); + var flavorRecipe = recipeList.First(data => data.RecipeId == gameData.ShopStock[targetIndex]); + var rarityData = rarityList.First(data => data.Rarity == flavorData.rarity); gameData.ShopStock.RemoveAt(targetIndex); - var bonusRate = 0; - coin += flavorRecipe.Price * (1 + bonusRate / 100); + gameData.AddSalesCount(flavorData.flavor, 1, flavorData.rarity); + coin += flavorRecipe.Price * (1 + rarityData.rate / 100); } return coin; }