@Override
    public Skin loadSkin(Path skinPath) {
        if (!FileUtil.control(skinPath)) {
            IllegalArgumentException iae = new IllegalArgumentException("The skindirectory is not existing!");
            Main.handleUnhandableProblem(iae);
        }
        cleanModel();

        Skin skin = null;
        skin = new Skin(Constants.RESHACKER_SCRIPT_PATH, Constants.SYSTEMFILE_AUTHUI_TMPPATH, Constants.UITEXT_TMP,
                Constants.SYSTEMFILE_BASEBRD_TMPPATH);
        try {
            skin.load(skinPath);

            {
                LOGGER.debug("Skin loaded!");
                LOGGER.debug(skin.toString());
            }

        } catch (IOException e) {
            Main.handleUnhandableProblem(e);
        }

        return skin;
    }