internal static T[] GetDistinctItemsOfType <T>(Func <T, bool> predicate = null) { PickableStack[] stacks = PickableStack.CreateStacks(instance._collection); List <T> result = new List <T>(); foreach (PickableStack stack in stacks) { T item = stack.firstInteractable.GetComponent <T>(); if (item != null) { if (predicate == null || predicate(item)) { result.Add(item); } } } return(result.ToArray()); }
internal static PickableStack[] GetStacks() { return(PickableStack.CreateStacks(instance._collection)); }
internal PickableStack[] GetStacks() { return(PickableStack.CreateStacks(_collection)); }