game: display the max amount assignable in item select dialog

This commit is contained in:
Crypto City 2020-01-18 13:02:00 +00:00
parent 59a8a6345d
commit 3e25efaf45
3 changed files with 10 additions and 4 deletions

View File

@ -3,3 +3,5 @@ WindowInfo
TBLayout: axis: x, size: "available", distribution: "gravity"
TBTextField: id: "type", gravity: "left right"
TBEditField: id: "amount", text: "0"
TBTextField: text: "/"
TBTextField: id: "max-amount", text: "0"

View File

@ -31,12 +31,15 @@ UISelectItemsDialog::SelectableItemWidget::SelectableItemWidget(SelectableItemIt
TBTextField *typeWidget = GetWidgetByIDAndType<TBTextField>(TBIDC("type"));
typeWidget->SetText(cc::get_item_name(item->item).c_str());
TBEditField *amountWidget = GetWidgetByIDAndType<TBEditField>(TBIDC("amount"));
TBTextField *maxAmountWidget = GetWidgetByIDAndType<TBTextField>(TBIDC("max-amount"));
maxAmountWidget->SetText(String(item->max_amount).CString());
}
UISelectItemsDialog::SelectableItemItem::SelectableItemItem(const GameState *game, uint32_t item):
UISelectItemsDialog::SelectableItemItem::SelectableItemItem(const GameState *game, uint32_t item, uint32_t max_amount):
TBGenericStringItem(cc::get_item_name(item).c_str()),
game(game),
item(item)
item(item),
max_amount(max_amount)
{
}
@ -79,7 +82,7 @@ void UISelectItemsDialog::FillItemList()
{
if (e.second == 0)
continue;
SelectableItemItem *item = new SelectableItemItem(game, e.first);
SelectableItemItem *item = new SelectableItemItem(game, e.first, e.second);
selectableItemSource.AddItem(item);
}
}

View File

@ -48,9 +48,10 @@ private:
class SelectableItemItem: public tb::TBGenericStringItem
{
public:
SelectableItemItem(const GameState *game, uint32_t item);
SelectableItemItem(const GameState *game, uint32_t item, uint32_t max_amount);
const GameState *game;
uint32_t item;
uint32_t max_amount;
};
class SelectableItemSource: public tb::TBSelectItemSourceList<SelectableItemItem>