diff --git a/popcorn/Assets/MyGame/Scenes/CornField/Scripts/CornField.cs b/popcorn/Assets/MyGame/Scenes/CornField/Scripts/CornField.cs index 965bc9eb..c558e87f 100644 --- a/popcorn/Assets/MyGame/Scenes/CornField/Scripts/CornField.cs +++ b/popcorn/Assets/MyGame/Scenes/CornField/Scripts/CornField.cs @@ -161,7 +161,7 @@ public class CornField : MonoBehaviour #if UNITY_EDITOR cityGameData.fertilizerTime = DateTime.UtcNow.AddSeconds(10 + fertilizerDuration).ToBinary(); #endif - globalGameData.AddUseFertiliser(); + cityGameData.AddUseFertiliser(); GameDataManager.SaveGameData(); additionView.IsStopDisapper = true; diff --git a/popcorn/Assets/MyGame/Scenes/Main/Scripts/AutoCookDialog.cs b/popcorn/Assets/MyGame/Scenes/Main/Scripts/AutoCookDialog.cs index a211169d..707ebb0e 100644 --- a/popcorn/Assets/MyGame/Scenes/Main/Scripts/AutoCookDialog.cs +++ b/popcorn/Assets/MyGame/Scenes/Main/Scripts/AutoCookDialog.cs @@ -53,7 +53,7 @@ namespace MyGame.Scenes.Main.Scripts cityGameData.AutoCookFinishTime = DateTime.UtcNow.AddHours(autoCookData.duration).ToBinary(); // レシピをランダムに並び替えて保存 cityGameData.AutoCookProducts = globalGameData.MyRecipes.OrderBy(x => Random.value).ToArray(); - globalGameData.AddUseAutoCook(); + cityGameData.AddUseAutoCook(); GameDataManager.SaveGameData(); LocalCacheManager.Load(SuccessCallbackTag, null)?.Invoke(); LocalCacheManager.Remove(SuccessCallbackTag); diff --git a/popcorn/Assets/MyGame/Scenes/shopping/Scripts/ShopItemView.cs b/popcorn/Assets/MyGame/Scenes/shopping/Scripts/ShopItemView.cs index 5842a8c0..7f7c1658 100644 --- a/popcorn/Assets/MyGame/Scenes/shopping/Scripts/ShopItemView.cs +++ b/popcorn/Assets/MyGame/Scenes/shopping/Scripts/ShopItemView.cs @@ -43,11 +43,12 @@ public class ShopItemView : MonoBehaviour * レシピは広告視聴回数で開放 * 別途フラグで切替も検討 */ + var totalAdCount = GameDataManager.GameData.GetTotalAdCount(); purchaseObject.SetActive(shopData.Category != ItemCategory.Recipe); exchangeObject.SetActive(shopData.Category == ItemCategory.Recipe); - progressBar.value = Mathf.InverseLerp(0, shopData.price, GameDataManager.GameData.adCount); - progressText.text = string.Format(ProgressFormat, GameDataManager.GameData.adCount, shopData.price); - onObject.SetActive(shopData.price <= GameDataManager.GameData.adCount); + progressBar.value = Mathf.InverseLerp(0, shopData.price, totalAdCount); + progressText.text = string.Format(ProgressFormat, totalAdCount, shopData.price); + onObject.SetActive(shopData.price <= totalAdCount); offObject.SetActive(!onObject.activeSelf); } diff --git a/popcorn/Assets/MyGame/Scenes/shopping/Scripts/Shopping.cs b/popcorn/Assets/MyGame/Scenes/shopping/Scripts/Shopping.cs index 03f159bf..09bebe89 100644 --- a/popcorn/Assets/MyGame/Scenes/shopping/Scripts/Shopping.cs +++ b/popcorn/Assets/MyGame/Scenes/shopping/Scripts/Shopping.cs @@ -197,7 +197,7 @@ public class Shopping : MonoBehaviour var shopDataList = SpreadsheetDataManager.Instance.GetBaseDataList(Const.ShopDataSheet) .Where(data => !data.IsHide) .Where(data => data.Category == ItemCategory.Recipe); - var adCount = GameDataManager.GameData.adCount; + var adCount = GameDataManager.GameData.GetTotalAdCount(); foreach (var shopData in shopDataList) { if (GetItemAmount(shopData) > 0) continue; diff --git a/popcorn/Assets/MyGame/Scripts/GameDataManager.cs b/popcorn/Assets/MyGame/Scripts/GameDataManager.cs index da351cb8..232eff4b 100644 --- a/popcorn/Assets/MyGame/Scripts/GameDataManager.cs +++ b/popcorn/Assets/MyGame/Scripts/GameDataManager.cs @@ -269,7 +269,8 @@ public sealed class GameData { if (cornSeed < value) { TotalAddCornSeed += value - cornSeed; - DailyTotalAddCornSeed += value - cornSeed; + // globalGameDataを加算 + GameDataManager.GameData.DailyTotalAddCornSeed += value - cornSeed; } cornSeed = value; } @@ -280,12 +281,14 @@ public sealed class GameData { if (coin < value) { TotalAddCoin += value - coin; - DailyTotalAddCoin += value - coin; + // globalGameDataを加算 + GameDataManager.GameData.DailyTotalAddCoin += value - coin; } else { TotalSubCoin += coin - value; - DailyTotalSubCoin += coin - value; + // globalGameDataを加算 + GameDataManager.GameData.DailyTotalSubCoin += coin - value; } coin = value; } @@ -293,13 +296,15 @@ public sealed class GameData { public void AddCustomerCount(int value) { TotalCustomerCount += value; - DailyTotalCustomerCount += value; + // globalGameDataを加算 + GameDataManager.GameData.DailyTotalCustomerCount += value; } public void AddVipCustomerCount(int value) { TotalVipCustomer += value; - DailyVipCustomer += value; + // globalGameDataを加算 + GameDataManager.GameData.DailyVipCustomer += value; } public void AddSalesCount(int id, int stock, ProductRarity rarity) @@ -312,10 +317,12 @@ public sealed class GameData { } stockData.Stock += stock; - if (!(DailyTotalSalesList.FirstOrDefault(x => x.FlavorId == id && x.Rarity == rarity) is ProductStockData dailyStockData)) + // globalGameDataを加算 + var globalGameData = GameDataManager.GameData; + if (!(globalGameData.DailyTotalSalesList.FirstOrDefault(x => x.FlavorId == id && x.Rarity == rarity) is ProductStockData dailyStockData)) { dailyStockData = new ProductStockData {FlavorId = id, Rarity = rarity, Stock = 0}; - DailyTotalSalesList.Add(dailyStockData); + globalGameData.DailyTotalSalesList.Add(dailyStockData); } dailyStockData.Stock += stock; } @@ -416,25 +423,34 @@ public sealed class GameData { public void AddAdCount(){ adCount++; - DailyWatchVideo++; + // globalGameDataを加算 + GameDataManager.GameData.DailyWatchVideo++; } public void AddUseFertiliser() { TotalUseFertiliser++; - DailyUseFertiliser++; + // globalGameDataを加算 + GameDataManager.GameData.DailyUseFertiliser++; } public void AddUseAdWalker() { TotalUseAdWalker++; - DailyUseAdWalker++; + // globalGameDataを加算 + GameDataManager.GameData.DailyUseAdWalker++; } public void AddUseAutoCook() { TotalUseAutoCook++; - DailyUseAutoCook++; + // globalGameDataを加算 + GameDataManager.GameData.DailyUseAutoCook++; + } + + public int GetTotalAdCount() + { + return GameDataManager.GameData.adCount + GameDataManager.GameData.CityGameDataDict.Values.Sum(data => data.adCount); } public void InitTank() diff --git a/popcorn/Assets/MyGame/Scripts/GetRewardDialog.cs b/popcorn/Assets/MyGame/Scripts/GetRewardDialog.cs index 538fa3f0..28b817a6 100644 --- a/popcorn/Assets/MyGame/Scripts/GetRewardDialog.cs +++ b/popcorn/Assets/MyGame/Scripts/GetRewardDialog.cs @@ -120,7 +120,7 @@ namespace MyGame.Scripts if (result) { successCallback?.Invoke(); - GameDataManager.GameData.AddAdCount(); + GameDataManager.GetCurrentCityGameData().AddAdCount(); } TransitionManager.Instance.UnloadScene(unloadScene); }, placement);