public void loadImages(String entityName, String actionIdentifier, String category) {

        FileReader fileReader = null;

        try {
            fileReader = new FileReader("Platformer/conf/" + category + "/" + entityName + ".json");
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        }

        JSONObject jsonObject = new JSONObject(new JSONTokener(fileReader));
        BufferedImage spriteSheet = null;

        // Get images sprite sheet
        try {
            spriteSheet = ImageIO.read(new File("Platformer/res/" + category + "/" + jsonObject.getString("spritesheet") + ".png"));
        } catch (IOException e) {
            e.printStackTrace();
        }

        // Extract animation speed
        JSONObject actionLoaded = jsonObject.getJSONObject("animations").getJSONObject(actionIdentifier);
        animationSpeed = actionLoaded.getInt("animationspeed");

        JSONObject loadedImages = actionLoaded.getJSONObject("images");

        // Load each images and its bounding boxes
        int x, y, width, height;
        int i = 1;
        JSONArray imageDelimitors = null;
        Rectangle box;
        while (true) {

            try {
                imageDelimitors = loadedImages.getJSONArray(Integer.toString(i));
            } catch (JSONException e) {
                break;
            }


            x = imageDelimitors.getInt(0);
            y = imageDelimitors.getInt(1);
            width = imageDelimitors.getInt(2);
            height = imageDelimitors.getInt(3);

            // TODO : add bounding boxes in json files
            hitBox.put(i - 1, new Rectangle(x, y, width, height));
            images.add(spriteSheet.getSubimage(x, y, width, height));
            i++;
        }
    }