店舗開放処理追加
This commit is contained in:
parent
173f9928ab
commit
c829d6340b
|
@ -1,5 +1,6 @@
|
|||
using System;
|
||||
using System.Linq;
|
||||
using MyGame.Scenes.marketing.Scripts;
|
||||
using MyGame.Scripts;
|
||||
using UniRx;
|
||||
using UniRx.Triggers;
|
||||
|
@ -29,7 +30,7 @@ namespace MyGame.Scenes.WorldMap.Scripts
|
|||
.Where(_ => Input.GetKeyDown(KeyCode.R))
|
||||
.Subscribe(_ => TransitionManager.Instance.LoadScene(GameScenes.WorldMap));
|
||||
#endif
|
||||
var gameData = GameDataManager.GameData;
|
||||
var globalGameData = GameDataManager.GameData;
|
||||
var cityDataList = SpreadsheetDataManager.Instance.GetBaseDataList<CityData>(Const.CityDataSheet);
|
||||
var fundingDataList = SpreadsheetDataManager.Instance.GetBaseDataList<FundingData>(Const.FundingDataSheet);
|
||||
var partTimerDataList = SpreadsheetDataManager.Instance.GetBaseDataList<PartTimerData>(Const.PartTimerDataSheet);
|
||||
|
@ -69,17 +70,11 @@ namespace MyGame.Scenes.WorldMap.Scripts
|
|||
{
|
||||
TransitionManager.Instance.LoadScene(GameScenes.Main);
|
||||
}).AddTo(this);
|
||||
|
||||
/*
|
||||
* 初期実装都市のデータ設定
|
||||
*/
|
||||
gameData.IsFundingCompleted = true;
|
||||
GameDataUtils.CreateCityData(2);
|
||||
|
||||
foreach (var cityIcon in cityIcons)
|
||||
{
|
||||
// 選択中の店舗を中央に持ってくる
|
||||
if (cityIcon.CityId == gameData.CurrentCityId)
|
||||
if (cityIcon.CityId == globalGameData.CurrentCityId)
|
||||
{
|
||||
content.localPosition = contentOffset.AddX(-cityIcon.transform.localPosition.x);
|
||||
}
|
||||
|
@ -131,9 +126,13 @@ namespace MyGame.Scenes.WorldMap.Scripts
|
|||
{
|
||||
var (heartProgress, coinProgress) = CalcPartTimerProgress(partTimerData, cityGameData.PartTimerElapsed);
|
||||
earningView.SetData(cityData, partTimerData, Mathf.Max(heartProgress, coinProgress));
|
||||
// 指定の都市に遷移
|
||||
earningView.OnClick.Subscribe(_ =>
|
||||
{
|
||||
gameData.CurrentCityId = cityIcon.CityId;
|
||||
globalGameData.CurrentCityId = cityIcon.CityId;
|
||||
WorldMarketManager.Instance.UpdateCurrentCity(cityIcon.CityId);
|
||||
GameDataObserver.Instance.ChangeCity(cityIcon.CityId);
|
||||
GameDataObserver.Instance.CheckMissionProgress();
|
||||
TransitionManager.Instance.LoadScene(GameScenes.Main);
|
||||
LocalCacheManager.Save(Const.ChangeCityFlagTag, true);
|
||||
}).AddTo(citySelectDisposable);
|
||||
|
@ -158,16 +157,24 @@ namespace MyGame.Scenes.WorldMap.Scripts
|
|||
// 資金投入
|
||||
cityGameData.FundingDict[fundingData.fundingCityId] += amount;
|
||||
GameDataManager.GetCityGameData(fundingData.fundingCityId).Coin -= amount;
|
||||
cityGameData.IsFundingCompleted = filteredFundingList.All(data => cityGameData.FundingDict[data.fundingCityId] >= data.needAmount);
|
||||
GameDataManager.SaveGameData();
|
||||
// view更新
|
||||
view.SetData(fundingData, cityGameData.FundingDict[fundingData.fundingCityId]);
|
||||
if (!cityGameData.IsFundingCompleted)
|
||||
// 調達未達成で処理終了
|
||||
if (filteredFundingList.Any(data => cityGameData.FundingDict[data.fundingCityId] < data.needAmount))
|
||||
{
|
||||
// view更新
|
||||
view.SetData(fundingData, cityGameData.FundingDict[fundingData.fundingCityId]);
|
||||
GameDataManager.SaveGameData();
|
||||
return;
|
||||
}
|
||||
|
||||
// 調達完了後処理
|
||||
var latestCityGameData = GameDataManager.GetCityGameData(GameDataUtils.GetLatestCityId());
|
||||
latestCityGameData.BrotherHeart = GameDataUtils.GetTotalHeart();
|
||||
cityGameData.IsFundingCompleted = true;
|
||||
GameDataManager.SaveGameData();
|
||||
|
||||
// 新店舗初期化
|
||||
PartTimerManager.Instance.UpdateList();
|
||||
|
||||
// 都市開放演出
|
||||
shareGate = false;
|
||||
earningView.gameObject.SetActive(false);
|
||||
|
|
Loading…
Reference in New Issue