DebugOptionでの大量注文のID指定に対応

This commit is contained in:
kimura 2022-04-08 18:47:39 +09:00
parent e6edf5b187
commit dbf6b38e72
2 changed files with 1182 additions and 0 deletions

File diff suppressed because it is too large Load Diff

View File

@ -32,6 +32,7 @@ public class DebugOptionManager : MonoBehaviour
[SerializeField] private Toggle vipRewardToggle; [SerializeField] private Toggle vipRewardToggle;
[SerializeField] private InputField coinCount; [SerializeField] private InputField coinCount;
[SerializeField] private InputField heartCount; [SerializeField] private InputField heartCount;
[SerializeField] private Dropdown bulkOrderDropdown;
#if UNITY_EDITOR || DEVELOPMENT_BUILD #if UNITY_EDITOR || DEVELOPMENT_BUILD
// Start is called before the first frame update // Start is called before the first frame update
void Start() void Start()
@ -173,6 +174,40 @@ public class DebugOptionManager : MonoBehaviour
gameData.Heart = Int32.Parse(x); gameData.Heart = Int32.Parse(x);
}).AddTo(this); }).AddTo(this);
bulkOrderDropdown.ClearOptions();
var bulkOrderList = SpreadsheetDataManager.Instance.GetBaseDataList<BulkOrderData>(Const.BulkOrderDataSheet);
var nextOrderList = bulkOrderList
.Where(data => data.shopLevel == gameData.AchievedOrderLevel + 1)
.ToList();
var bkpDeliveredOrder = gameData.DeliveredOrder.ToList();
if (nextOrderList.Count > 0)
{
var len = nextOrderList.Count;
var index = nextOrderList.FindIndex(data => data.id == gameData.OrderIdInProgress);
bulkOrderDropdown.AddOptions(nextOrderList.Select(data => $"id:{data.id}").ToList());
// 現在のIDをデフォで設定
if (index != -1)
{
bulkOrderDropdown.value = index;
}
bulkOrderDropdown.OnValueChangedAsObservable()
.Skip(1)
.DistinctUntilChanged()
.Subscribe(x =>
{
var prevOrder = nextOrderList[(len + x - 1) % len];
var order = nextOrderList[x];
// 未達成に設定
gameData.DeliveredOrder = bkpDeliveredOrder;
gameData.DeliveredOrder.Remove(order.id);
// 1つ前のオーダーを設定
gameData.OrderIdInProgress = gameData.CancelOrderId = prevOrder.id;
// 即座に通知を発生
gameData.OrderConditionCount = 99999;
}).AddTo(this);
}
// debugfielddata // debugfielddata
// gameData.PlantLines = new List<PlantLineData> // gameData.PlantLines = new List<PlantLineData>
// { // {