public static void loadFileNames(String pathToSprite,
                                           String xmlOfSpriteType,
                                           ArrayList<Integer> uniqueIDList,
                                           ArrayList<String> names)
                                           throws InvalidXMLFileFormatException
    {
        // FIRST LET'S BUILD THE NAME OF THE XML FILE
        String xmlFile = (pathToSprite + xmlOfSpriteType).trim();
        
        // NOW LET'S BUILD THE NAME OF THE SCHEMA
        String xsdFile = "./data/sprite_types/sprite_type.xsd";
        
        // IS THE XML VALID PER THE SCHEMA?
        WhitespaceFreeXMLDoc cleanDoc = loadXMLDocument(xmlFile, xsdFile);

        // IF THERE'S A PROBLEM LOADING THE XML FILE THEN
        // SKIP THIS SPRITE TYPE
        if (cleanDoc == null)
        {
            throw new InvalidXMLFileFormatException(xmlFile, xsdFile);
        }

        // IT'S A VALID XML FILE SO LET'S GET THE DATA
        //Gets the root of sprite_type_list.xml which is <sprite_type>.
        WhitespaceFreeXMLNode root = cleanDoc.getRoot();
        
        //Puts all the animations_list's in an ArrayList.
        ArrayList<WhitespaceFreeXMLNode> listOfImages_List = root.getChildrenOfType("images_list");
        
        //The list for all the image_file nodes
        ArrayList<WhitespaceFreeXMLNode> listOfImages;
        
        //Go through each Image and get the file_names of the images that have the same id as the ones we are looking for.
        for(int eachImages_List=0;eachImages_List<listOfImages_List.size();eachImages_List++){
            listOfImages = listOfImages_List.get(eachImages_List).getChildrenOfType("image_file");
            for(int eachImage=0;eachImage<listOfImages.size();eachImage++)
                if(uniqueIDList.contains(Integer.parseInt(listOfImages.get(eachImage).getAttributeValue("id"))))
                    names.add(listOfImages.get(eachImage).getAttributeValue("file_name"));
        }
    }