public static Item[] getAllItems(final boolean cached) {
        final Item[] items = new Item[28];
        final WidgetChild inventoryWidget = getWidget(cached);
        if (inventoryWidget != null) {
            final WidgetChild[] inventoryChildren = inventoryWidget.getChildren();
            if (inventoryChildren.length >= items.length) {
                for (int i = 0; i < items.length; i++) {
                    final WidgetChild wc = inventoryChildren[i];
                    items[i] = (wc == null || wc.getChildId() == -1) ? null : new Item(wc);
                }
            }
        }
        return items;
    }