リファクタ
This commit is contained in:
parent
3d599a4eff
commit
980ed76a58
|
|
@ -84,16 +84,11 @@ public class ProductManagement : MonoBehaviour
|
||||||
if (tankView.TankNumber > gameData.StorageTanks.Count)
|
if (tankView.TankNumber > gameData.StorageTanks.Count)
|
||||||
{
|
{
|
||||||
// 価格の一番小さいタンクのみ購入できるようにする
|
// 価格の一番小さいタンクのみ購入できるようにする
|
||||||
if (tankView.TankNumber == gameData.StorageTanks.Count + 1)
|
var isSmallest = tankView.TankNumber == gameData.StorageTanks.Count + 1;
|
||||||
{
|
tankView.SetState(isSmallest ? TankState.Lock : TankState.Unavailable);
|
||||||
tankView.SetState(TankState.Lock);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
tankView.SetState(TankState.Unavailable);
|
|
||||||
}
|
|
||||||
// タンク購入
|
// タンク購入
|
||||||
var shopData = shopDataList.First(data => data.id == Const.ShopTankId);
|
var shopData = shopDataList.First(data => data.id == Const.ShopTankId);
|
||||||
|
shopData.price = PriceList[tankView.TankNumber - 1];
|
||||||
|
|
||||||
// 購入可否
|
// 購入可否
|
||||||
tankView.SetCanBuy(shopData.price <= CoinManager.Instance.OwnCoin);
|
tankView.SetCanBuy(shopData.price <= CoinManager.Instance.OwnCoin);
|
||||||
|
|
@ -103,10 +98,10 @@ public class ProductManagement : MonoBehaviour
|
||||||
.TakeWhile(_ => tankView.State.Value == TankState.Lock || tankView.State.Value == TankState.Unavailable)
|
.TakeWhile(_ => tankView.State.Value == TankState.Lock || tankView.State.Value == TankState.Unavailable)
|
||||||
.Subscribe(_ =>
|
.Subscribe(_ =>
|
||||||
{
|
{
|
||||||
Action<int> purchaseAction = amount =>
|
void PurchaseAction(int amount)
|
||||||
{
|
{
|
||||||
// タンク追加
|
// タンク追加
|
||||||
gameData.StorageTanks.Add(new StorageTank() {Capacity = Const.TankCapacity});
|
gameData.StorageTanks.Add(new StorageTank { Capacity = Const.TankCapacity });
|
||||||
tankView.SetData(gameData.StorageTanks[tankView.TankNumber - 1]);
|
tankView.SetData(gameData.StorageTanks[tankView.TankNumber - 1]);
|
||||||
tankView.SetState(TankState.Unlock);
|
tankView.SetState(TankState.Unlock);
|
||||||
CoinManager.Instance.SubCoin(shopData.price);
|
CoinManager.Instance.SubCoin(shopData.price);
|
||||||
|
|
@ -118,9 +113,10 @@ public class ProductManagement : MonoBehaviour
|
||||||
tankList[tankView.TankNumber].SetState(TankState.Lock);
|
tankList[tankView.TankNumber].SetState(TankState.Lock);
|
||||||
tankList[tankView.TankNumber].SetCanBuy(PriceList[tankView.TankNumber] <= CoinManager.Instance.OwnCoin);
|
tankList[tankView.TankNumber].SetCanBuy(PriceList[tankView.TankNumber] <= CoinManager.Instance.OwnCoin);
|
||||||
}
|
}
|
||||||
};
|
}
|
||||||
|
|
||||||
shopData.price = PriceList[tankView.TankNumber - 1];
|
shopData.price = PriceList[tankView.TankNumber - 1];
|
||||||
ShopItemPurchaseView.ShowDialog((shopData, 0), purchaseAction);
|
ShopItemPurchaseView.ShowDialog((shopData, 0), PurchaseAction);
|
||||||
}).AddTo(tankView);
|
}).AddTo(tankView);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue