diff --git a/popcorn/Assets/MyGame/Scenes/Main/Scripts/KitchenManager.cs b/popcorn/Assets/MyGame/Scenes/Main/Scripts/KitchenManager.cs index ceaa9aea..58b6405b 100644 --- a/popcorn/Assets/MyGame/Scenes/Main/Scripts/KitchenManager.cs +++ b/popcorn/Assets/MyGame/Scenes/Main/Scripts/KitchenManager.cs @@ -54,7 +54,39 @@ public class KitchenManager : MonoBehaviour var isPartTimer = !GameDataUtils.CheckLatestCity(globalGameData.CurrentCityId); if (isPartTimer) { + var partTimersData = SpreadsheetDataManager.Instance.GetBaseDataList(Const.PartTimerDataSheet); + var cityDataList = SpreadsheetDataManager.Instance.GetBaseDataList(Const.CityDataSheet); + var cityData = cityDataList.First(data => data.id == globalGameData.CurrentCityId); + partTimerButtonView.SetBadgeActive(false); + partTimerButtonView.OnClick.Subscribe(_ => + { + PartTimerDialog.ShowDialog(cityData, partTimersData, () => + { + // バッジ更新 + }); + }).AddTo(this); + // WorldMapからの遷移 + if (LocalCacheManager.Load(Const.ChangeCityFlagTag, default)) + { + // dialog表示時点の値をcache + var partTimerElapsed = cityGameData.PartTimerElapsed; + if (partTimerElapsed > 10) + { + EarningsReportDialog.ShowDialog(() => + { + var partTimerData = partTimersData.First(data => data.level == cityGameData.PartTimerLevel); + var (coin, heart) = PartTimerManager.CalcEarnings(partTimerData, partTimerElapsed); + HeartMeter.Instance.AddHeart(heart); + cityGameData.Heart += heart; + CoinManager.Instance.AddCoin(coin); + cityGameData.Coin = CoinManager.Instance.OwnCoin; + cityGameData.PartTimerElapsed -= partTimerElapsed; + GameDataManager.SaveGameData(); + }); + } + } + LocalCacheManager.Remove(Const.ChangeCityFlagTag); } else { @@ -292,7 +324,11 @@ public class KitchenManager : MonoBehaviour // 所持金0救済 adButton.gameObject.SetActive(true); kitchenView.SetNormalAnimation(); - showAdDialogSubject.OnNext(Unit.Default); + // 達成報酬とかぶる場合考慮 + if (!isPartTimer) + { + showAdDialogSubject.OnNext(Unit.Default); + } } else if (remaining > 0) { diff --git a/popcorn/Assets/MyGame/Scenes/WorldMap/Scripts/WorldMap.cs b/popcorn/Assets/MyGame/Scenes/WorldMap/Scripts/WorldMap.cs index 154a29cb..60500014 100644 --- a/popcorn/Assets/MyGame/Scenes/WorldMap/Scripts/WorldMap.cs +++ b/popcorn/Assets/MyGame/Scenes/WorldMap/Scripts/WorldMap.cs @@ -143,6 +143,7 @@ namespace MyGame.Scenes.WorldMap.Scripts { gameData.CurrentCityId = cityIcon.CityId; TransitionManager.Instance.LoadScene(GameScenes.Main); + LocalCacheManager.Save(Const.ChangeCityFlagTag, true); }).AddTo(citySelectDisposable); } fundingView.ResetView(); @@ -173,6 +174,8 @@ namespace MyGame.Scenes.WorldMap.Scripts { return; } + // 新店舗初期化 + PartTimerManager.Instance.UpdateList(); // 都市開放演出 shareGate = false; earningView.gameObject.SetActive(false);