カスタマイズ機能アイテム選択修正
This commit is contained in:
parent
daa26f4cc3
commit
3deee94349
|
|
@ -38,38 +38,33 @@ namespace MyGame.Scenes.marketing.Scripts
|
|||
ShopCustomizeItem selectedItem = null;
|
||||
foreach (var customizeData in list)
|
||||
{
|
||||
var selectSubject = new Subject<Unit>().AddTo(this);
|
||||
var item = customizeSelector.GenerateItem(category);
|
||||
item.SetData(customizeData);
|
||||
|
||||
// 現在設定しているのアイテムを選択
|
||||
if (customizeData.id == selectedId)
|
||||
{
|
||||
selectedItem = item;
|
||||
item.SetState(ShopCustomizeItemState.Selected);
|
||||
}
|
||||
else if (gameData.ShopCustomizeMyItems.Contains(customizeData.id))
|
||||
if (gameData.ShopCustomizeMyItems.Contains(customizeData.id))
|
||||
{
|
||||
item.SetState(ShopCustomizeItemState.Purchased);
|
||||
}
|
||||
else if (gameData.ShopCustomizeLevel > customizeData.level)
|
||||
{
|
||||
item.SetState(ShopCustomizeItemState.Lock);
|
||||
}
|
||||
else
|
||||
else if (gameData.ShopCustomizeLevel >= customizeData.level)
|
||||
{
|
||||
item.SetState(ShopCustomizeItemState.Unlock);
|
||||
}
|
||||
else
|
||||
{
|
||||
item.SetState(ShopCustomizeItemState.Lock);
|
||||
}
|
||||
|
||||
item.SelectObservable.Subscribe(_ =>
|
||||
item.SelectObservable.Merge(selectSubject).Subscribe(_ =>
|
||||
{
|
||||
if (item != selectedItem)
|
||||
{
|
||||
selectedItem.SetState(ShopCustomizeItemState.Purchased);
|
||||
selectedItem = item;
|
||||
}
|
||||
selectedItem = item;
|
||||
item.SetState(ShopCustomizeItemState.Selected);
|
||||
gameData.ShopCustomizeSettings.SetSetting(customizeData);
|
||||
// marketView.SetItem(customizeData);
|
||||
marketView.SetItem(customizeData);
|
||||
}).AddTo(this);
|
||||
item.DetailObservable.Subscribe(_ =>
|
||||
{
|
||||
|
|
@ -81,9 +76,16 @@ namespace MyGame.Scenes.marketing.Scripts
|
|||
ShopCustomizePurchaseDialog.ShowDialog(customizeData, false, () =>
|
||||
{
|
||||
PurchaseItem(customizeData);
|
||||
item.SetState(ShopCustomizeItemState.Selected);
|
||||
selectSubject.OnNext(Unit.Default);
|
||||
});
|
||||
}).AddTo(this);
|
||||
|
||||
// 現在設定しているのアイテムを選択
|
||||
if (customizeData.id == selectedId)
|
||||
{
|
||||
selectedItem = item;
|
||||
selectSubject.OnNext(Unit.Default);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue