Adventure Creator  1.79.1
An adventure game toolkit for Unity, by Chris Burton, ICEBOX Studios 2013-2022
AC.MenuInventoryBox Class Reference
Inheritance diagram for AC.MenuInventoryBox:
AC.MenuElement

Public Member Functions

override void Declare ()
 
override MenuElement DuplicateSelf (bool fromEditor, bool ignoreUnityUI)
 Creates and returns a new MenuElement that has the same values as itself. More...
 
override void LoadUnityUI (AC.Menu _menu, Canvas canvas, bool addEventListeners=true)
 Initialises the linked Unity UI GameObject. More...
 
UnityEngine.UI.Button GetUIButtonWithItem (int itemID)
 Gets the UI Button associated with an inventory item, provided that the Menus' Source is UnityUiPrefab or UnityUiInScene. More...
 
override GameObject GetObjectToSelect (int slotIndex=0)
 Gets the linked Unity UI GameObject associated with this element. More...
 
override RectTransform GetRectTransform (int _slot)
 Gets the boundary of the element, or a slot within it. More...
 
override void ShowGUI (Menu menu)
 
override bool ReferencesAsset (ActionListAsset actionListAsset)
 Checks if the Menu makes reference to a particular ActionList asset More...
 
override bool ReferencesObjectOrID (GameObject gameObject, int id)
 Checks if the Element makes reference to a particular GameObject More...
 
override int GetSlotIndex (GameObject gameObject)
 Gets the slot index that reference a particular GameObject More...
 
override void HideAllUISlots ()
 
override void SetUIInteractableState (bool state)
 Sets the interactive state of any linked Unity UI gameobjects. More...
 
override string GetHotspotLabelOverride (int _slot, int _language)
 Gets a string that overrides the default 'hotspot label'. More...
 
override void PreDisplay (int _slot, int languageNumber, bool isActive)
 Performs all calculations necessary to display the element. More...
 
override void Display (GUIStyle _style, int _slot, float zoom, bool isActive)
 Draws the element using OnGUI More...
 
bool HandleDefaultClick (MouseState _mouseState, int _slot)
 Performs what should happen when the element is clicked on, if inventoryBoxType = AC_InventoryBoxType.Default. More...
 
override void RecalculateSize (MenuSource source)
 Recalculates the element's size. This should be called whenever a Menu's shape is changed. More...
 
override void OnMenuTurnOn (Menu menu)
 Called whenever the Menu this is attached to is turned on. More...
 
override bool CanBeShifted (AC_ShiftInventory shiftType)
 Checks if the element's slots can be shifted in a particular direction. More...
 
override void Shift (AC_ShiftInventory shiftType, int amount)
 Shifts which slots are on display, if the number of slots the element has exceeds the number of slots it can show at once. More...
 
override string GetLabel (int i, int languageNumber)
 Gets the display text of the element, or a slot within it. More...
 
override bool IsSelectedByEventSystem (int slotIndex)
 Checks if the element is selected by Unity UI's EventSystem (if the Menu is Unity UI-based). More...
 
override bool IsSelectableInteractable (int slotIndex)
 Checks if the element's linked Selectable is currently Interactable (if the Menu is Unity UI-based). More...
 
override AudioClip GetHoverSound (int slot)
 Gets the hover sound for the element slot. More...
 
InvItem GetItem (int i)
 Gets the inventory item shown in a specific slot More...
 
InvInstance GetInstance (int i)
 Gets the inventory item instance shown in a specific slot More...
 
void ResetOffset ()
 
bool ClickContainer (MouseState _mouseState, int _slot)
 Performs what should happen when the element is clicked on, if inventoryBoxType = AC_InventoryBoxType.Container. More...
 
override bool ProcessClick (AC.Menu _menu, int _slot, MouseState _mouseState)
 Performs what should happen when the element is clicked on. More...
 
Document GetDocument (int slotIndex)
 Gets the Document associated with a given slot More...
 
ObjectiveInstance GetObjective (int slotIndex)
 Gets the Document associated with a given slot More...
 
int GetItemSlot (int itemID)
 Gets the slot index number that a given InvItem (inventory item) appears in. More...
 
int GetItemSlot (InvInstance invInstance)
 Gets the slot index number that a given InvItem (inventory item) appears in. More...
 
- Public Member Functions inherited from AC.MenuElement
virtual void Copy (MenuElement _element)
 Copies the values of another MenuElement onto itself. More...
 
virtual void Initialise (AC.Menu _menu)
 Performs any initialisation that can only be done once the element has been instantiated at runtime. More...
 
virtual bool ProcessContinuousClick (AC.Menu _menu, MouseState _mouseState)
 Performs what should happen when the element is clicked on continuously. More...
 
virtual void SetSpeech (Speech _speech)
 Assigns the element to a specific Speech line. More...
 
virtual void ClearSpeech ()
 
void UpdateID (int[] idArray)
 Updates the ID number to something unique. More...
 
virtual void OverrideLabel (string newLabel, int _lineID=-1)
 
void UpdateLabel (int languageNumber)
 
void ShowGUIStart (Menu menu)
 
virtual bool CheckConvertGlobalVariableToLocal (int oldGlobalID, int newLocalID)
 Checks if the Element makes references from a given global variable to a given local variable More...
 
virtual int GetVariableReferences (int varID)
 Gets the number of references the MenuElement makes to a global variable More...
 
virtual int UpdateVariableReferences (int oldVarID, int newVarID)
 Updates references the MenuElement makes to a global variable More...
 
virtual void DrawOutline (bool isSelected, AC.Menu _menu)
 Draws an outline around the element. More...
 
Vector2[] GetSlotCentres (AC.Menu _menu)
 Gets the element's slot centres, as an array of Vector2s. This is used when keyboard-navigating menus More...
 
Vector2 GetSize ()
 Gets the size of the whole element. More...
 
Vector2 GetSizeFromCorner ()
 Gets the Vector2 from the top-left corner of the parent Menu to the bottom-right corner of the element. More...
 
void SetSize (Vector2 _size)
 Sets the size of an individual slot. More...
 
int GetNumSlots ()
 Gets the number of display slots the element has. This is not the maximum number of slots that can be shown by shifting - it is the number of slots that are shown at any one time. More...
 
Rect GetSlotRectRelative (int _slot)
 Gets the boundary of a slot, as a proportion of the screen size. More...
 
int GetFontSize ()
 Gets the size of the font. More...
 
void SetPosition (Vector2 _position)
 Sets the element's position. More...
 
void SetRelativePosition (Vector2 _size)
 
void ResetDragOffset ()
 
void SetDragOffset (Vector2 pos, Rect dragRect)
 Offsets an OnGUI MenuElement's position when dragged by a MenuDrag element. More...
 
Vector2 GetDragStart ()
 Gets the drag offset. More...
 
void AutoSetVisibility ()
 
int GetOffset ()
 Gets the amount by which the slots have been offset, if the number that can be shown exceeds the number that can be display at once. More...
 
void SetOffset (int value)
 Sets the amount by which the slots have been offset, if the number that can be shown exceeds the number that can be display at once. More...
 
string GetVisibilitySaveData ()
 
override string ToString ()
 

Public Attributes

UISlot[] uiSlots
 
UIPointerState uiPointerState = UIPointerState.PointerClick
 
TextEffects textEffects
 
TextAnchor anchor = TextAnchor.MiddleCenter
 
float outlineSize = 2f
 
Color effectColour = Color.black
 
AC_InventoryBoxType inventoryBoxType
 
ActionListAsset actionListOnClick = null
 
int maxSlots
 
bool limitToCategory
 
bool limitToDefinedInteractions = true
 
int categoryID
 
List< int > categoryIDs = new List<int>()
 
LinkUIGraphic linkUIGraphic = LinkUIGraphic.ImageComponent
 
bool preventInteractions = false
 
bool preventSelection = false
 
bool limitMaxScroll = true
 
bool highlightEmptySlots = false
 
bool markAlreadyRead = false
 
Color alreadyReadFontColour = Color.white
 
Color alreadyReadFontHighlightedColour = Color.white
 
bool updateHotspotLabelWhenHover = false
 
bool hoverSoundOverEmptySlots = true
 
ContainerSelectMode containerSelectMode = ContainerSelectMode.MoveToInventoryAndSelect
 
ConversationDisplayType displayType = ConversationDisplayType.IconOnly
 
UIHideStyle uiHideStyle = UIHideStyle.DisableObject
 
bool autoOpenDocument = true
 
Texture2D emptySlotTexture = null
 
InventoryItemCountDisplay inventoryItemCountDisplay = InventoryItemCountDisplay.OnlyIfMultiple
 
ObjectiveDisplayType objectiveDisplayType = ObjectiveDisplayType.All
 
- Public Attributes inherited from AC.MenuElement
int ID
 
string title = "Element"
 
Vector2 slotSize
 
AC_SizeType sizeType
 
AC_PositionType2 positionType
 
float slotSpacing = 0f
 
int lineID = -1
 
string alternativeInputButton = ""
 
Font font
 
float fontScaleFactor = 60f
 
Color fontColor = Color.white
 
Color fontHighlightColor = Color.white
 
bool isClickable
 
ElementOrientation orientation = ElementOrientation.Vertical
 
int gridWidth = 3
 
Texture2D backgroundTexture
 
bool singleSlotBackgrounds = false
 
Texture2D highlightTexture
 
AudioClip hoverSound
 
AudioClip clickSound
 
bool changeCursor = false
 
int cursorID = 0
 
int linkedUiID
 
float maxAutoWidthFactor = 0.5f
 

Protected Member Functions

override void ProcessClickUI (AC.Menu _menu, int _slot, MouseState _mouseState)
 
override void ShowTextureGUI (string apiPrefix)
 
override void ShowTextGUI (string apiPrefix)
 
void ClickInvItemToInteract (InvInstance invInstance)
 
override void AutoSize ()
 
- Protected Member Functions inherited from AC.MenuElement
void CreateUIEvent (UnityEngine.UI.Button uiButton, AC.Menu _menu, UIPointerState uiPointerState=UIPointerState.PointerClick, int _slotIndex=0, bool liveState=true)
 
void CreateHoverSoundHandler (Selectable selectable, AC.Menu _menu, int _slotIndex=0)
 
virtual string GetLabelToTranslate ()
 
void ClearCache ()
 
string TranslateLabel (int languageNumber)
 
void EndGUI (string apiPrefix)
 
void ShowClipHelp ()
 
LinkedUiGUI< T > (T field, string label, MenuSource source, string tooltip="")
 
UISlot[] ResizeUISlots (UISlot[] uiSlots, int maxSlots)
 
void ChangeCursorGUI (Menu menu)
 
void LimitUISlotVisibility (UISlot[] uiSlots, int _numSlots, UIHideStyle uiHideStyle, Texture emptyTexture=null)
 
void LimitUISlotVisibility (UISlot[] uiSlots, int _numSlots, UISelectableHideStyle uiHideStyle)
 
Rect ZoomRect (Rect rect, float zoom)
 
void LimitOffset ()
 
void Shift (AC_ShiftInventory shiftType, int maxSlots, int arraySize, int amount)
 
void SetAbsoluteSize (Vector2 _size)
 
void AutoSize (GUIContent content)
 
void LinkUIElement< T > (Canvas canvas, ref T existingField)
 
void UpdateUISelectable< T > (T field, UISelectableHideStyle uiSelectableHideStyle)
 
void UpdateUIElement< T > (T field)
 
void ClearSpriteCache (UISlot[] uiSlots)
 
void SetUISlotsInteractableState (UISlot[] uiSlots, bool state)
 

Properties

override int?? MaxSlotsForOffset [get]
 
Container OverrideContainer [get, set]
 
List< InvInstanceInvInstances [get]
 
- Properties inherited from AC.MenuElement
virtual bool IsVisible [get, set]
 
virtual int MaxSlotsForOffset [get]
 
Menu ParentMenu [get]
 

Additional Inherited Members

- Protected Attributes inherited from AC.MenuElement
bool isVisible = true
 
int offset = 0
 
Menu parentMenu
 
Rect relativeRect
 
Vector2 relativePosition
 
int numSlots
 

Detailed Description

A MenuElement that lists inventory items (see: InvItem). It can be used to display all inventory items held by the player, those that are stored within a Container, or as part of an Interaction Menu.

Member Function Documentation

◆ CanBeShifted()

override bool AC.MenuInventoryBox.CanBeShifted ( AC_ShiftInventory  shiftType)
virtual

Checks if the element's slots can be shifted in a particular direction.

Parameters
shiftTypeThe direction to shift slots in (Left, Right)
Returns
True if the element's slots can be shifted in the particular direction

Reimplemented from AC.MenuElement.

◆ ClickContainer()

bool AC.MenuInventoryBox.ClickContainer ( MouseState  _mouseState,
int  _slot 
)

Performs what should happen when the element is clicked on, if inventoryBoxType = AC_InventoryBoxType.Container.

Parameters
_mouseStateThe state of the mouse button
_slotThe index number of the slot that was clicked on
Returns
True if the click had an effect and should be consumed

◆ Declare()

override void AC.MenuInventoryBox.Declare ( )
virtual

Initialises the MenuElement when it is created within MenuManager.

Reimplemented from AC.MenuElement.

◆ Display()

override void AC.MenuInventoryBox.Display ( GUIStyle  _style,
int  _slot,
float  zoom,
bool  isActive 
)
virtual

Draws the element using OnGUI

Parameters
_styleThe GUIStyle to draw with
_slotThe index number of the slot to display
zoomThe zoom factor

<param name = "isActive If True, then the element will be drawn as though highlighted

Reimplemented from AC.MenuElement.

◆ DuplicateSelf()

override MenuElement AC.MenuInventoryBox.DuplicateSelf ( bool  fromEditor,
bool  ignoreUnityUI 
)
virtual

Creates and returns a new MenuElement that has the same values as itself.

Parameters
fromEditorIf True, the duplication was done within the Menu Manager and not as part of the gameplay initialisation.
ignoreUnityUIIf True, variables associated with Unity UI will not be transferred
Returns
A new MenuElement with the same values as itself

Reimplemented from AC.MenuElement.

◆ GetDocument()

Document AC.MenuInventoryBox.GetDocument ( int  slotIndex)

Gets the Document associated with a given slot

Parameters
slotIndexThe element's slot index number
Returns
The Document assoicated with the slot

◆ GetHotspotLabelOverride()

override string AC.MenuInventoryBox.GetHotspotLabelOverride ( int  _slot,
int  _language 
)
virtual

Gets a string that overrides the default 'hotspot label'.

Parameters
_slotThe index number of the slot to get an override label for
_languageThe index number of the language to display text in
Returns
A string that overrides the default 'hotspot label'. If empty, the default will not be overridden.

Reimplemented from AC.MenuElement.

◆ GetHoverSound()

override AudioClip AC.MenuInventoryBox.GetHoverSound ( int  slot)
virtual

Gets the hover sound for the element slot.

Parameters
slotThe slots index number
Returns
Tover sound for the element slot.

Reimplemented from AC.MenuElement.

◆ GetInstance()

InvInstance AC.MenuInventoryBox.GetInstance ( int  i)

Gets the inventory item instance shown in a specific slot

Parameters
iThe index number of the slot
Returns
The inventory item instance shown in the slot

◆ GetItem()

InvItem AC.MenuInventoryBox.GetItem ( int  i)

Gets the inventory item shown in a specific slot

Parameters
iThe index number of the slot
Returns
The inventory item shown in the slot

◆ GetItemSlot() [1/2]

int AC.MenuInventoryBox.GetItemSlot ( int  itemID)

Gets the slot index number that a given InvItem (inventory item) appears in.

Parameters
itemIDThe ID number of the InvItem to search for
Returns
The slot index number that the inventory item appears in

◆ GetItemSlot() [2/2]

int AC.MenuInventoryBox.GetItemSlot ( InvInstance  invInstance)

Gets the slot index number that a given InvItem (inventory item) appears in.

Parameters
invInstanceThe instance of the InvItem to search for
Returns
The slot index number that the inventory item appears in

◆ GetLabel()

override string AC.MenuInventoryBox.GetLabel ( int  slot,
int  languageNumber 
)
virtual

Gets the display text of the element, or a slot within it.

Parameters
slotThe index number of the slot to get text for
languageNumberThe index number of the language number to get the text in
Returns
The display text of the element's slot, or the whole element if it only has one slot

Reimplemented from AC.MenuElement.

◆ GetObjective()

ObjectiveInstance AC.MenuInventoryBox.GetObjective ( int  slotIndex)

Gets the Document associated with a given slot

Parameters
slotIndexThe element's slot index number
Returns
The Document assoicated with the slot

◆ GetObjectToSelect()

override GameObject AC.MenuInventoryBox.GetObjectToSelect ( int  slotIndex = 0)
virtual

Gets the linked Unity UI GameObject associated with this element.

Parameters
slotIndexThe slot index, if the element has multiple slots
Returns
The Unity UI GameObject associated with the element

Reimplemented from AC.MenuElement.

◆ GetRectTransform()

override RectTransform AC.MenuInventoryBox.GetRectTransform ( int  _slot)
virtual

Gets the boundary of the element, or a slot within it.

Parameters
_slotThe index number of the slot to get the boundary of
Returns
The boundary Rect of the slot. If the element doesn't have multiple slots, the boundary of the whole element will be returned.

Reimplemented from AC.MenuElement.

◆ GetSlotIndex()

override int AC.MenuInventoryBox.GetSlotIndex ( GameObject  gameObject)
virtual

Gets the slot index that reference a particular GameObject

Parameters
gameObjectThe GameObject to check for
Returns
The slot index that references the GameObject

Reimplemented from AC.MenuElement.

◆ GetUIButtonWithItem()

UnityEngine.UI.Button AC.MenuInventoryBox.GetUIButtonWithItem ( int  itemID)

Gets the UI Button associated with an inventory item, provided that the Menus' Source is UnityUiPrefab or UnityUiInScene.

Parameters
itemIDThe ID number of the inventory item (InvItem) to search for
Returns
The UI Button associated with an inventory item, or null if a suitable Button cannot be found.

◆ HandleDefaultClick()

bool AC.MenuInventoryBox.HandleDefaultClick ( MouseState  _mouseState,
int  _slot 
)

Performs what should happen when the element is clicked on, if inventoryBoxType = AC_InventoryBoxType.Default.

Parameters
_mouseStateThe state of the mouse button
_slotThe index number of the slot that was clicked on
Returns
True if the click had an effect and should be consumed

◆ HideAllUISlots()

override void AC.MenuInventoryBox.HideAllUISlots ( )
virtual

Hides all linked Unity UI GameObjects associated with the element.

Reimplemented from AC.MenuElement.

◆ IsSelectableInteractable()

override bool AC.MenuInventoryBox.IsSelectableInteractable ( int  slotIndex)
virtual

Checks if the element's linked Selectable is currently Interactable (if the Menu is Unity UI-based).

Parameters
slotIndexThe element's slot index, if it has multiple slots
Returns
True if the element's linked Selectable is currently Interactable

Reimplemented from AC.MenuElement.

◆ IsSelectedByEventSystem()

override bool AC.MenuInventoryBox.IsSelectedByEventSystem ( int  slotIndex)
virtual

Checks if the element is selected by Unity UI's EventSystem (if the Menu is Unity UI-based).

Parameters
slotIndexThe element's slot index, if it has multiple slots
Returns
True if the element is selected by Unity UI's EventSystem.

Reimplemented from AC.MenuElement.

◆ LoadUnityUI()

override void AC.MenuInventoryBox.LoadUnityUI ( AC.Menu  _menu,
Canvas  canvas,
bool  addEventListeners = true 
)
virtual

Initialises the linked Unity UI GameObject.

Parameters
_menuThe element's parent Menu
canvasThe runtime Canvas associated with the Menu
addEventListenersIf True, then event listeners should be added to the UI's Interactive component(s)

Reimplemented from AC.MenuElement.

◆ OnMenuTurnOn()

override void AC.MenuInventoryBox.OnMenuTurnOn ( Menu  menu)
virtual

Called whenever the Menu this is attached to is turned on.

Parameters
menuThe Menu this is attached to

Reimplemented from AC.MenuElement.

◆ PreDisplay()

override void AC.MenuInventoryBox.PreDisplay ( int  _slot,
int  languageNumber,
bool  isActive 
)
virtual

Performs all calculations necessary to display the element.

Parameters
_slotThe index number of the slot to display
languageNumberThe index number of the language to display text in
isActiveIf True, then the element will be drawn as though highlighted

Reimplemented from AC.MenuElement.

◆ ProcessClick()

override bool AC.MenuInventoryBox.ProcessClick ( AC.Menu  _menu,
int  _slot,
MouseState  _mouseState 
)
virtual

Performs what should happen when the element is clicked on.

Parameters
_menuThe element's parent Menu
_slotThe index number of the slot that was clicked on
_mouseStateThe state of the mouse button
Returns
True if the click had an effect, and so should be consumed

Reimplemented from AC.MenuElement.

◆ RecalculateSize()

override void AC.MenuInventoryBox.RecalculateSize ( MenuSource  source)
virtual

Recalculates the element's size. This should be called whenever a Menu's shape is changed.

Parameters
sourceHow the parent Menu is displayed (AdventureCreator, UnityUiPrefab, UnityUiInScene)

Reimplemented from AC.MenuElement.

◆ ReferencesAsset()

override bool AC.MenuInventoryBox.ReferencesAsset ( ActionListAsset  actionListAsset)
virtual

Checks if the Menu makes reference to a particular ActionList asset

Parameters
actionListAssetThe ActionList to check for
Returns
True if the Menu references the ActionList

Reimplemented from AC.MenuElement.

◆ ReferencesObjectOrID()

override bool AC.MenuInventoryBox.ReferencesObjectOrID ( GameObject  gameObject,
int  id 
)
virtual

Checks if the Element makes reference to a particular GameObject

Parameters
gameObjectThe GameObject to check for
idThe GameObject's associated ConstantID value
Returns
True if the Element references the GameObject

Reimplemented from AC.MenuElement.

◆ ResetOffset()

void AC.MenuInventoryBox.ResetOffset ( )

Re-sets the "shift" offset, so that the first InvItem shown is the first InvItem in items.

◆ SetUIInteractableState()

override void AC.MenuInventoryBox.SetUIInteractableState ( bool  state)
virtual

Sets the interactive state of any linked Unity UI gameobjects.

Parameters
stateIf True, linked UI gameobjects will be made interactive. If False, they will be made non-interactive

Reimplemented from AC.MenuElement.

◆ Shift()

override void AC.MenuInventoryBox.Shift ( AC_ShiftInventory  shiftType,
int  amount 
)
virtual

Shifts which slots are on display, if the number of slots the element has exceeds the number of slots it can show at once.

Parameters
shiftTypeThe direction to shift slots in (Left, Right)
amountThe amount to shift slots by

Reimplemented from AC.MenuElement.

Member Data Documentation

◆ actionListOnClick

ActionListAsset AC.MenuInventoryBox.actionListOnClick = null

An ActionList to run when a slot is clicked (if inventoryBoxType = CollectedDocuments or Objectives)

◆ alreadyReadFontColour

Color AC.MenuInventoryBox.alreadyReadFontColour = Color.white

The font colour for options already chosen (if markAlreadyChosen = True, and inventoryBoxType = AC_InventoryBoxType.CollectedDocuents). OnGUI only)

◆ alreadyReadFontHighlightedColour

Color AC.MenuInventoryBox.alreadyReadFontHighlightedColour = Color.white

If markAlreadyRead, and inventoryBoxType = AC_InventoryBoxType.CollectedDocuents, the font colour when the option is highlighted but has already been chosen (OnGUI only)

◆ anchor

TextAnchor AC.MenuInventoryBox.anchor = TextAnchor.MiddleCenter

The text alignement, if displayType = ConversationDisplayType.TextOnly

◆ autoOpenDocument

bool AC.MenuInventoryBox.autoOpenDocument = true

If True, and inventoryBoxType = AC_InventoryBoxType.CollectedDocuments, then clicking an element slot will open the chosen Document

◆ categoryID

int AC.MenuInventoryBox.categoryID

The category ID to limit the display of inventory items by, if limitToCategory = True (Deprecated)

◆ categoryIDs

List<int> AC.MenuInventoryBox.categoryIDs = new List<int>()

The category IDs to limit the display of inventory items by, if limitToCategory = True

◆ containerSelectMode

ContainerSelectMode AC.MenuInventoryBox.containerSelectMode = ContainerSelectMode.MoveToInventoryAndSelect

If inventoryBoxType = AC_InventoryBoxType.Container, what happens to items when they are removed from the container

◆ displayType

ConversationDisplayType AC.MenuInventoryBox.displayType = ConversationDisplayType.IconOnly

How items are displayed (IconOnly, TextOnly, IconAndText)

◆ effectColour

Color AC.MenuInventoryBox.effectColour = Color.black

The outline colour

◆ emptySlotTexture

Texture2D AC.MenuInventoryBox.emptySlotTexture = null

The texture to display when a slot is empty

◆ highlightEmptySlots

bool AC.MenuInventoryBox.highlightEmptySlots = false

If True, then slots with no item in them will have highlighting effects applied as well

◆ hoverSoundOverEmptySlots

bool AC.MenuInventoryBox.hoverSoundOverEmptySlots = true

If True, then the hover sound will play even when over an empty slot

◆ inventoryBoxType

AC_InventoryBoxType AC.MenuInventoryBox.inventoryBoxType

How the items to display are chosen (Default, HotspotBased, CustomScript, DisplaySelected, DisplayLastSelected, Container, CollectedDocuments, Objectives)

◆ inventoryItemCountDisplay

InventoryItemCountDisplay AC.MenuInventoryBox.inventoryItemCountDisplay = InventoryItemCountDisplay.OnlyIfMultiple

How the item count is displayed

◆ limitMaxScroll

bool AC.MenuInventoryBox.limitMaxScroll = true

If True, and the element is scrolled by an offset larger than the number of new items to show, then the offset amount will be reduced to only show those new items.

◆ limitToCategory

bool AC.MenuInventoryBox.limitToCategory

If True, only inventory items (InvItem) with a specific category will be displayed

◆ limitToDefinedInteractions

bool AC.MenuInventoryBox.limitToDefinedInteractions = true

If True, then only inventory items that are listed in a Hotspot's / InvItem's interactions will be listed if inventoryBoxType = AC_InventoryBoxType.HotspotBased

◆ linkUIGraphic

LinkUIGraphic AC.MenuInventoryBox.linkUIGraphic = LinkUIGraphic.ImageComponent

What Image component the Element's Graphics should be linked to (ImageComponent, ButtonTargetGraphic)

◆ markAlreadyRead

bool AC.MenuInventoryBox.markAlreadyRead = false

If True, and inventoryBoxType = AC_InventoryBoxType.CollectedDocuents, then Documents that have already been clicked can be displayed in a different colour

◆ maxSlots

int AC.MenuInventoryBox.maxSlots

The maximum number of inventory items that can be shown at once

◆ objectiveDisplayType

ObjectiveDisplayType AC.MenuInventoryBox.objectiveDisplayType = ObjectiveDisplayType.All

What Objectives to display, if inventoryBoxType = AC_InventoryBoxType.Objectives

◆ outlineSize

float AC.MenuInventoryBox.outlineSize = 2f

The outline thickness, if textEffects != TextEffects.None

◆ preventInteractions

bool AC.MenuInventoryBox.preventInteractions = false

If True, then no interactions will work

◆ preventSelection

bool AC.MenuInventoryBox.preventSelection = false

If True, then items cannot be selected

◆ textEffects

TextEffects AC.MenuInventoryBox.textEffects

The special FX applied to the text (None, Outline, Shadow, OutlineAndShadow)

◆ uiHideStyle

UIHideStyle AC.MenuInventoryBox.uiHideStyle = UIHideStyle.DisableObject

The method by which this element (or slots within it) are hidden from view when made invisible (DisableObject, ClearContent)

◆ uiPointerState

UIPointerState AC.MenuInventoryBox.uiPointerState = UIPointerState.PointerClick

What pointer state registers as a 'click' for Unity UI Menus (PointerClick, PointerDown, PointerEnter)

◆ uiSlots

UISlot [] AC.MenuInventoryBox.uiSlots

A List of UISlot classes that reference the linked Unity UI GameObjects (Unity UI Menus only)

◆ updateHotspotLabelWhenHover

bool AC.MenuInventoryBox.updateHotspotLabelWhenHover = false

DisplayType != ConversationDisplayType.IconOnly, Hotspot labels will only update when hovering over items if this is True

Property Documentation

◆ InvInstances

List<InvInstance> AC.MenuInventoryBox.InvInstances
get

The items listed in the element

◆ OverrideContainer

Container AC.MenuInventoryBox.OverrideContainer
getset

If set, and inventoryBoxType = AC_InventoryBoxType.Container, then this Container will be used instead of the global 'active' one. Note that its Menu's 'Appear type' should not be set to 'On Container'.