public static List<IItem> inventory(int size, List<IItem> excludedItems){
        List<IItem> itemBase = getItemList();
        if(size > itemBase.size()){
            try{
                throw new Exception("Inventory too large (" + size + "), itembase"
                        + "holds " + itemBase.size() + " items");
            }catch(Exception e){
                e.printStackTrace();
            }
        }
            
        List<IItem> inventory = new ArrayList<IItem>();
        Random rand = new Random();
        if(excludedItems != null){
            for(IItem excluded: excludedItems){
                for(int i = 0; i < itemBase.size();i++){
                    if(excluded.getName().equals(itemBase.get(i).getName())){
                        itemBase.remove(i);
                        break;
                    }
                }
            }
        }
        for(int i = 0; i < size; i++){
            int pointer = rand.nextInt(itemBase.size());
            inventory.add(itemBase.get(pointer));
            itemBase.remove(pointer);
        }
        return inventory;
    }