From 90a5b39aaab89497c72b61dfa6281d446b53776e Mon Sep 17 00:00:00 2001 From: kimura Date: Thu, 19 May 2022 15:08:42 +0900 Subject: [PATCH] =?UTF-8?q?=E3=82=AB=E3=82=B9=E3=82=BF=E3=83=9E=E3=82=A4?= =?UTF-8?q?=E3=82=BA=E6=A9=9F=E8=83=BD=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Scenes/marketing/Scripts/ShopCustomize.cs | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/popcorn/Assets/MyGame/Scenes/marketing/Scripts/ShopCustomize.cs b/popcorn/Assets/MyGame/Scenes/marketing/Scripts/ShopCustomize.cs index 0597bb9a..75ffe43b 100644 --- a/popcorn/Assets/MyGame/Scenes/marketing/Scripts/ShopCustomize.cs +++ b/popcorn/Assets/MyGame/Scenes/marketing/Scripts/ShopCustomize.cs @@ -12,12 +12,19 @@ namespace MyGame.Scenes.marketing.Scripts [SerializeField] private MarketView marketView; [SerializeField] private ShopCustomizeView customizeView; [SerializeField] private ShopCustomizeSelector customizeSelector; + private readonly Subject levelNotify = new Subject(); private void Start() { + levelNotify.AddTo(this); + var gameData = GameDataManager.GameData; var customizeDataList = SpreadsheetDataManager.Instance.GetBaseDataList(Const.ShopCustomizeDataSheet); - var customizeLevelList = SpreadsheetDataManager.Instance.GetBaseDataList(Const.ShopCustomizeLevelDataSheet); - var customizeBonusList = SpreadsheetDataManager.Instance.GetBaseDataList(Const.ShopCustomizeBonusDataSheet); +#if UNITY_EDITOR + Debug.Log($@" +coin {gameData.ShopCustomizeCoin} +myItems {string.Join(",", gameData.ShopCustomizeMyItems.Select(x => x.ToString()))} +"); +#endif if (!gameData.FinishedFlags.HasFlag(TutorialFlag.ShopCustomize)) { @@ -67,6 +74,13 @@ namespace MyGame.Scenes.marketing.Scripts else { item.SetState(ShopCustomizeItemState.Lock); + levelNotify.Distinct() + .Where(x => x >= customizeData.level) + .Take(1) + .Subscribe(x => + { + item.SetState(ShopCustomizeItemState.Unlock); + }).AddTo(this); } item.SelectObservable.Merge(selectSubject).Subscribe(_ => @@ -118,6 +132,7 @@ namespace MyGame.Scenes.marketing.Scripts var customizeLevelList = SpreadsheetDataManager.Instance.GetBaseDataList(Const.ShopCustomizeLevelDataSheet); var level = customizeLevelList.LastOrDefault(data => data.point <= gameData.ShopCustomizePoint)?.level ?? 1; + levelNotify.OnNext(level); gameData.ShopCustomizeLevel = level; GameDataManager.SaveGameData(); }