デバッグオプション追加
This commit is contained in:
parent
e5478e1451
commit
966c678b32
File diff suppressed because it is too large
Load Diff
|
@ -4,6 +4,7 @@ using System.Collections.Generic;
|
|||
using System.Linq;
|
||||
using I2.Loc;
|
||||
using MyGame.Scenes.marketing.Scripts;
|
||||
using MyGame.Scenes.WorldMap.Scripts;
|
||||
using MyGame.Scripts;
|
||||
using UniRx;
|
||||
using UnityEngine;
|
||||
|
@ -43,8 +44,10 @@ public class DebugOptionManager : MonoBehaviour
|
|||
[SerializeField] private Toggle vipRewardToggle;
|
||||
[SerializeField] private InputField coinCount;
|
||||
[SerializeField] private InputField heartCount;
|
||||
[SerializeField] private InputField latestCityHeartCount;
|
||||
[SerializeField] private InputField shopCustomizeCoinCount;
|
||||
[SerializeField] private Dropdown shopLevelDropdown;
|
||||
[SerializeField] private Dropdown cityShopLevelDropdown;
|
||||
[SerializeField] private Dropdown bulkOrderDropdown;
|
||||
[SerializeField] private Dropdown autoCookDropdown;
|
||||
[SerializeField] private Button resetWorldMapButton;
|
||||
|
@ -61,6 +64,7 @@ public class DebugOptionManager : MonoBehaviour
|
|||
if (!LocalCacheManager.Exists(DebugPrevSceneTag))
|
||||
{
|
||||
TransitionManager.Instance.LoadScene(GameScenes.Main);
|
||||
return;
|
||||
}
|
||||
SoundManager.Instance.StopBGM();
|
||||
var prevScene = LocalCacheManager.Load<GameScenes>(DebugPrevSceneTag);
|
||||
|
@ -87,19 +91,19 @@ public class DebugOptionManager : MonoBehaviour
|
|||
|
||||
resetFieldButton.OnClickAsObservable().Subscribe(_ =>
|
||||
{
|
||||
globalGameData.PlantLineDataList = new List<PlantLineData>
|
||||
cityGameData.PlantLineDataList = new List<PlantLineData>
|
||||
{
|
||||
new PlantLineData(PlantLineType.Center, CornFieldRank.Rank1),
|
||||
};
|
||||
globalGameData.SeedlingDataList = new List<SeedlingProgressData>();
|
||||
globalGameData.MachineLevel = 1;
|
||||
globalGameData.CornSeed = 0;
|
||||
cityGameData.SeedlingDataList = new List<SeedlingProgressData>();
|
||||
cityGameData.MachineLevel = 1;
|
||||
cityGameData.CornSeed = 0;
|
||||
}).AddTo(this);
|
||||
|
||||
resetMaterialButton.OnClickAsObservable().Subscribe(_ =>
|
||||
{
|
||||
// 所持素材
|
||||
globalGameData.Material.Clear();
|
||||
cityGameData.Material.Clear();
|
||||
// レシピ
|
||||
globalGameData.MyRecipes = GetMyRecipe(globalGameData.ViewedShopLevel, true);
|
||||
// フライパン
|
||||
|
@ -108,7 +112,7 @@ public class DebugOptionManager : MonoBehaviour
|
|||
|
||||
resetTankButton.OnClickAsObservable().Subscribe(_ =>
|
||||
{
|
||||
globalGameData.InitTank();
|
||||
cityGameData.InitTank();
|
||||
}).AddTo(this);
|
||||
|
||||
refillManyProductButton.OnClickAsObservable().Subscribe(_ =>
|
||||
|
@ -121,11 +125,11 @@ public class DebugOptionManager : MonoBehaviour
|
|||
// CookingResult.AddStock(new ProductData(){volume = 5, id = 1}, ProductRarity.Gold);
|
||||
// CookingResult.AddStock(new ProductData(){volume = 5, id = 1}, ProductRarity.Rainbow);
|
||||
// CookingResult.AddStock(new ProductData(){volume = 20, id = 2}, ProductRarity.Silver);
|
||||
if (globalGameData.StorageTanks.Count < 2)
|
||||
if (cityGameData.StorageTanks.Count < 2)
|
||||
{
|
||||
globalGameData.StorageTanks.Add(new StorageTank(){Capacity = Const.TankCapacity});
|
||||
cityGameData.StorageTanks.Add(new StorageTank(){Capacity = Const.TankCapacity});
|
||||
}
|
||||
var flavor = globalGameData.StorageTanks[0].FlavorId;
|
||||
var flavor = cityGameData.StorageTanks[0].FlavorId;
|
||||
if (flavor < 1)
|
||||
{
|
||||
flavor = 1;
|
||||
|
@ -140,22 +144,23 @@ public class DebugOptionManager : MonoBehaviour
|
|||
|
||||
refillLittleProductButton.OnClickAsObservable().Subscribe(_ =>
|
||||
{
|
||||
globalGameData.StorageTanks.ForEach(x => x.ClearStock());
|
||||
cityGameData.StorageTanks.ForEach(x => x.ClearStock());
|
||||
// CookingResult.AddStock(new ProductData(){volume = 5, id = 1}, ProductRarity.Yellow);
|
||||
CookingResult.AddStock(new ProductData(){volume = 3, id = 2}, ProductRarity.Copper);
|
||||
}).AddTo(this);
|
||||
|
||||
bulkOrderResetButton.OnClickAsObservable().Subscribe(_ =>
|
||||
{
|
||||
globalGameData.AchievedOrderLevel = 0;
|
||||
globalGameData.OrderIdInProgress = 0;
|
||||
globalGameData.CancelOrderId = 0;
|
||||
globalGameData.CompletedProductList.Clear();
|
||||
cityGameData.AchievedOrderLevel = 0;
|
||||
cityGameData.OrderIdInProgress = 0;
|
||||
cityGameData.CancelOrderId = 0;
|
||||
cityGameData.CompletedProductList.Clear();
|
||||
}).AddTo(this);
|
||||
|
||||
shopLevelUpResetButton.OnClickAsObservable().Subscribe(_ =>
|
||||
{
|
||||
globalGameData.ViewedShopLevel = 0;
|
||||
cityGameData.ViewedShopLevel = 0;
|
||||
}).AddTo(this);
|
||||
|
||||
dailyMissionResetButton.OnClickAsObservable().Subscribe(_ =>
|
||||
|
@ -171,13 +176,13 @@ public class DebugOptionManager : MonoBehaviour
|
|||
|
||||
normalMissionResetButton.OnClickAsObservable().Subscribe(_ =>
|
||||
{
|
||||
globalGameData.AchievedMission.Clear();
|
||||
globalGameData.ResetNormalTotalCount();
|
||||
cityGameData.AchievedMission.Clear();
|
||||
cityGameData.ResetNormalTotalCount();
|
||||
}).AddTo(this);
|
||||
|
||||
autoCookCompleteButton.OnClickAsObservable().Subscribe(_ =>
|
||||
{
|
||||
globalGameData.AutoCookFinishTime = DateTime.UtcNow.ToBinary();
|
||||
cityGameData.AutoCookFinishTime = DateTime.UtcNow.ToBinary();
|
||||
}).AddTo(this);
|
||||
|
||||
shopRecipeCompleteButton.OnClickAsObservable().Subscribe(_ =>
|
||||
|
@ -250,6 +255,13 @@ public class DebugOptionManager : MonoBehaviour
|
|||
globalGameData.Heart = Int32.Parse(x);
|
||||
}).AddTo(this);
|
||||
|
||||
// 最新の都市のハート数調整
|
||||
latestCityHeartCount.text = $"{GameDataManager.GetCityGameData(GameDataUtils.GetLatestCityId()).Heart}";
|
||||
latestCityHeartCount.OnValueChangedAsObservable().Subscribe(x =>
|
||||
{
|
||||
GameDataManager.GetCityGameData(GameDataUtils.GetLatestCityId()).Heart = Int32.Parse(x);
|
||||
}).AddTo(this);
|
||||
|
||||
shopCustomizeCoinCount.text = $"{globalGameData.ShopCustomizeCoin}";
|
||||
shopCustomizeCoinCount.OnValueChangedAsObservable().Subscribe(x =>
|
||||
{
|
||||
|
@ -278,18 +290,39 @@ public class DebugOptionManager : MonoBehaviour
|
|||
heartCount.text = $"{globalGameData.Heart}";
|
||||
}).AddTo(this);
|
||||
|
||||
/*
|
||||
* 都市ごとの店舗レベル指定
|
||||
*/
|
||||
if (GameDataManager.GameData.CurrentCityId == Const.DefaultCityId) cityShopLevelDropdown.interactable = false;
|
||||
cityShopLevelDropdown.ClearOptions();
|
||||
var cityShopLevelList = SpreadsheetDataManager.Instance.GetBaseDataList<CityShopLevelData>(Const.CityShopLevelDataSheet);
|
||||
cityShopLevelList = cityShopLevelList.Where(data => data.cityId == GameDataManager.GameData.CurrentCityId).ToList();
|
||||
cityShopLevelDropdown.AddOptions(cityShopLevelList.Select(data => data.shopLevel.ToString()).ToList());
|
||||
cityShopLevelDropdown.value = cityGameData.ViewedShopLevel - 1;
|
||||
cityShopLevelDropdown.OnValueChangedAsObservable()
|
||||
.Skip(1)
|
||||
.DistinctUntilChanged()
|
||||
.Subscribe(x =>
|
||||
{
|
||||
var shopLevelData = shopLevelList.First(data => data.shopLevel == x + 1);
|
||||
globalGameData.ViewedShopLevel = shopLevelData.shopLevel;
|
||||
globalGameData.Heart = shopLevelData.heart;
|
||||
globalGameData.MyRecipes = GetMyRecipe(shopLevelData.shopLevel);
|
||||
heartCount.text = $"{globalGameData.Heart}";
|
||||
}).AddTo(this);
|
||||
|
||||
/*
|
||||
* 現在の店舗レベルで受けられる大量注文から任意の注文を選択可能
|
||||
*/
|
||||
bulkOrderDropdown.ClearOptions();
|
||||
var bulkOrderList = SpreadsheetDataManager.Instance.GetBaseDataList<BulkOrderData>(Const.BulkOrderDataSheet);
|
||||
var bulkOrderList = BulkOrder.GetCityOrderList(GameDataManager.GameData.CurrentCityId);
|
||||
var nextOrderList = bulkOrderList
|
||||
.Where(data => data.shopLevel <= globalGameData.ViewedShopLevel)
|
||||
.Where(data => data.shopLevel <= cityGameData.ViewedShopLevel)
|
||||
.ToList();
|
||||
if (nextOrderList.Count > 0)
|
||||
{
|
||||
var len = nextOrderList.Count;
|
||||
var index = nextOrderList.FindIndex(data => data.id == globalGameData.OrderIdInProgress);
|
||||
var index = nextOrderList.FindIndex(data => data.id == cityGameData.OrderIdInProgress);
|
||||
bulkOrderDropdown.AddOptions(nextOrderList.Select(data => $"id:{data.id}").ToList());
|
||||
// 現在のIDをデフォで設定
|
||||
if (index != -1)
|
||||
|
@ -302,14 +335,14 @@ public class DebugOptionManager : MonoBehaviour
|
|||
.Subscribe(x =>
|
||||
{
|
||||
// オーダー達成状況をリセット
|
||||
globalGameData.DeliveredOrder.Clear();
|
||||
globalGameData.AchievedOrderLevel = nextOrderList[x].shopLevel - 1;
|
||||
cityGameData.DeliveredOrder.Clear();
|
||||
cityGameData.AchievedOrderLevel = nextOrderList[x].shopLevel - 1;
|
||||
// 1つ前のオーダーを現在のオーダーに設定
|
||||
var prevOrderId = x - 1 < 0 ? 0 : nextOrderList[x - 1].id;
|
||||
globalGameData.OrderIdInProgress = globalGameData.CancelOrderId = prevOrderId;
|
||||
if (nextOrderList[x].maxOrder > 1) globalGameData.DeliveredOrder.Add(prevOrderId);
|
||||
cityGameData.OrderIdInProgress = cityGameData.CancelOrderId = prevOrderId;
|
||||
if (nextOrderList[x].maxOrder > 1) cityGameData.DeliveredOrder.Add(prevOrderId);
|
||||
// 即座に通知を発生
|
||||
globalGameData.OrderConditionCount = 99999;
|
||||
cityGameData.OrderConditionCount = 99999;
|
||||
}).AddTo(this);
|
||||
}
|
||||
|
||||
|
@ -319,24 +352,32 @@ public class DebugOptionManager : MonoBehaviour
|
|||
autoCookDropdown.ClearOptions();
|
||||
var autoCookList = SpreadsheetDataManager.Instance.GetBaseDataList<AutoCookData>(Const.AutoCookDataSheet);
|
||||
autoCookDropdown.AddOptions(autoCookList.Select(data => data.level.ToString()).ToList());
|
||||
autoCookDropdown.value = globalGameData.AutoCookLevel - 1;
|
||||
autoCookDropdown.value = cityGameData.AutoCookLevel - 1;
|
||||
autoCookDropdown.OnValueChangedAsObservable()
|
||||
.Skip(1)
|
||||
.DistinctUntilChanged()
|
||||
.Subscribe(x =>
|
||||
{
|
||||
globalGameData.AutoCookUsesCount = 0;
|
||||
globalGameData.AutoCookLevel = autoCookList[x].level;
|
||||
cityGameData.AutoCookUsesCount = 0;
|
||||
cityGameData.AutoCookLevel = autoCookList[x].level;
|
||||
// level1ならチュートリアル復活
|
||||
if (globalGameData.AutoCookLevel == 1)
|
||||
if (cityGameData.AutoCookLevel == 1)
|
||||
{
|
||||
globalGameData.FinishedFlags &= ~TutorialFlag.AutoCook;
|
||||
globalGameData.AutoCookFinishTime = DateTime.UtcNow.ToBinary();
|
||||
globalGameData.AutoCookProducts = Array.Empty<int>();
|
||||
globalGameData.AutoCookUsesCount = 0;
|
||||
cityGameData.FinishedFlags &= ~TutorialFlag.AutoCook;
|
||||
cityGameData.AutoCookFinishTime = DateTime.UtcNow.ToBinary();
|
||||
cityGameData.AutoCookProducts = Array.Empty<int>();
|
||||
cityGameData.AutoCookUsesCount = 0;
|
||||
}
|
||||
}).AddTo(this);
|
||||
|
||||
resetWorldMapButton.OnClickAsObservable().Subscribe(_ =>
|
||||
{
|
||||
globalGameData.CityGameDataKeyValues = new CityGameDataDict.CityGameDataKeyValue[]{};
|
||||
globalGameData.OnDeserialized();
|
||||
globalGameData.PartTimerElapsed = 0;
|
||||
globalGameData.PartTimerLevel = 1;
|
||||
WorldMap.ChangeCity(Const.DefaultCityId);
|
||||
}).AddTo(this);
|
||||
|
||||
// debugfielddata
|
||||
// gameData.PlantLines = new List<PlantLineData>
|
||||
|
|
Loading…
Reference in New Issue