Crafting Window
🛠️ CraftingWindow Class
Inventool’s crafting window for combining items.
Namespace:
Esper.Inventool.UI
Access:public
Type:class
Inherits:DraggableWindow
📦 Fields
protected
craftingTitle
Label
Crafting window title label.
protected
craftingContent
VisualElement
Container for crafting UI content.
protected
craftingSlotElements
List<ItemSlotElement>
List of crafting slot elements.
protected
craftScroll
ScrollView
Scroll view for craft list.
protected
craftListElement
VisualElement
Container for craft list items.
protected
craftCostIcon
VisualElement
Icon for crafting cost.
protected
craftCostLabel
Label
Label for crafting cost text.
protected
craftButton
Button
Button to confirm crafting action.
protected
craftResultSlot
ItemSlotElement
Slot showing craft result item.
protected
craftEmptyLabel
Label
Label shown when craft list is empty.
protected
closeButton
Button
Button to close the window.
protected
crafter
Crafter
Crafting logic handler instance.
protected
activeCraftsman
Craftsman
Currently interacting craftsman.
protected
useCraftingCost
bool
Flag to display crafting cost.
protected
isPointerInsideCraftList
bool
True when pointer is over craft list.
🔍 Properties
public
OpenedForMerchant
bool
True if open for a merchant.
public static
Instance
CraftingWindow
Active singleton instance.
🧰 Methods
protected override
Awake()
void
Initialize singleton and wire UI events.
protected override
Start()
void
Hide window on start.
protected virtual
HandleCraftingError(string message)
void
Show error prompt on craft failure.
public
LocalizeElements()
void
Localize window UI text.
public virtual
Open(Craftsman craftsman)
void
Open window for the given craftsman.
public override
Close()
void
Close window and reset craft state.
public virtual
UpdateCraftingElements()
void
Refresh crafting content and result.
public virtual
IsPointerInsideCraftingList()
bool
Check if pointer is over craft list.
public virtual
ReloadCraftList()
void
Rebuild the craft list UI.
public virtual
AddToCraftList(ItemStack itemStack)
void
Add an item to the craft list.
public virtual
RemoveFromCraftList(int index)
void
Remove an item from the craft list.
public virtual
ConfirmCraft()
void
Execute the crafting operation.
Active Instance
You can get the active CraftingWindow
instance with CraftingWindow.Instance
. Ensure there's an instance of it in your scene before using this field.
Open
Call the Open
method when the crafting window should be opened. This method accepts a Craftsman
parameter. Use null to open without a craftsman reference.
CraftingWindow.Instance.Open(myCraftsman);
Close
Close
simply closes the window.
CraftingWindow.Instance.Close();
Last updated