Shop Window
🏪 ShopWindow Class
Window for displaying and filtering shop items.
Namespace:
Esper.Inventool.UI
Access:public
Type:class
Inherits:DraggableWindow
📦 Fields
protected
shopTitle
Label
Title label of the shop tab.
protected
closeButton
Button
Button to close the window.
protected
activeShopkeeper
Shopkeeper
Currently active shopkeeper instance.
protected
shopFilterScroll
ScrollView
ScrollView for shop filters.
protected
shopScroll
ScrollView
ScrollView listing available shop items.
protected
shopFilters
List<InventoryFilter>
List of filter buttons and their associated types.
protected
selectedShopFilter
InventoryFilter
Currently selected filter.
protected
isPointerInsideShop
bool
True while pointer is over the shop list.
🔍 Properties
public static
Instance
ShopWindow
Active singleton instance of this window.
🧰 Methods
protected override
Awake()
void
Register singleton, cache UI elements, and wire close and hover callbacks.
protected override
Start()
void
Initialize window state and hide on startup.
protected virtual
HandleItemSold(ItemStack itemStack)
void
Reload inventory and currencies after a sale.
public
LocalizeElements()
void
Localize the shop title when localization is enabled.
public virtual
Open(Shopkeeper shopkeeper)
void
Show window for the given shopkeeper, then reload filters and items.
public override
Close()
void
Close the window and clear the active shopkeeper.
protected virtual
ReloadShopItems()
void
Rebuild the shop item list based on the active filter.
protected virtual
ReloadShopFilters()
void
Rebuild the filter buttons for the shop.
public virtual
IsPointerInsideShopList()
bool
Return true if pointer is currently over the shop items list.
protected virtual
SelectShopFilter(InventoryFilter filter)
void
Highlight the selected filter button.
protected virtual
DeselectShopFilter()
void
Remove visual selection from the current filter.
public
GetActiveShopkeeper()
Shopkeeper
Retrieve the currently active shopkeeper instance.
🧩 Nested Types
protected struct InventoryFilter
protected struct InventoryFilter
button
Button
UI element representing the filter.
itemType
ItemType
The item type this filter applies to.
Active Instance
You can get the active ShopWindow
instance with ShopWindow.Instance
. Ensure there's an instance of it in your scene before using this field.
Open
Call the Open
method when the storage window should be opened. This method requires a Shopkeeper
reference as a parameter.
ShopWindow.Instance.Open(myShopkeeper);
Close
Close
simply closes the window.
ShopWindow.Instance.Close();
Last updated