package me.ryanhamshire.GriefPrevention.alttd.config; import me.ryanhamshire.GriefPrevention.alttd.util.Logger; import java.awt.*; import java.io.IOException; import java.util.HashMap; import java.util.concurrent.TimeUnit; @SuppressWarnings("unused") public class Config extends AbstractConfig { private Config() { super("alttdconfig.yml"); } static Config config; static int version; public static void reload() { config = new Config(); version = config.getInt("config-version", 1); config.set("config-version", 1); config.readConfig(Config.class, null); } public static boolean DEBUG_MODE = false; public static boolean alternativeClaimExpiring = false; public static int alternativeClaimExpireDays = 1; public static int adminClaimExpireCheckRate = 1200; public static int playerClaimExpireCheckRate = 1200; public static HashMap expiringClaims = new HashMap<>(); private static void settings() { String node = "alternative-claim-expiring"; DEBUG_MODE = config.getBoolean("debug-mode", DEBUG_MODE); alternativeClaimExpiring = config.getBoolean(node + ".enabled", alternativeClaimExpiring); alternativeClaimExpireDays = config.getInt(node + ".days", alternativeClaimExpireDays); adminClaimExpireCheckRate = config.getInt(node + ".admin-claim-expire-check-rate", adminClaimExpireCheckRate); playerClaimExpireCheckRate = config.getInt(node + ".player-claim-expire-check-rate", playerClaimExpireCheckRate); // todo create an alternative way of loading these in expiringClaims.clear(); config.getMap(node + ".claims", new HashMap()) .forEach((key, value) -> { try { expiringClaims.put(Long.parseLong(key), value); } catch (NumberFormatException ignored) {} }); } public static void addExpiringClaim(Long id) { expiringClaims.put(id, System.currentTimeMillis() + TimeUnit.DAYS.toMillis(alternativeClaimExpireDays)); config.set("alternative-claim-expiring.claims", expiringClaims); try { config.yaml.save(config.file); } catch (IOException ex) { Logger.severe("Could not save " + config.file.getName()); ex.printStackTrace(); } } public static String CONTROL_LABEL = "GriefPrevention"; public static boolean CONTROL_SHOW = true; public static boolean CONTROL_HIDE = false; public static String GRID_CONTROL_LABEL = "Gridlines"; public static boolean GRID_CONTROL_SHOW = true; public static boolean GRID_CONTROL_HIDE = true; public static int UPDATE_INTERVAL = 300; public static Color STROKE_COLOR = Color.GREEN; public static int STROKE_WEIGHT = 1; public static double STROKE_OPACITY = 1.0D; public static Color FILL_COLOR = Color.GREEN; public static double FILL_OPACITY = 0.2D; public static Color ADMIN_STROKE_COLOR = Color.BLUE; public static int ADMIN_STROKE_WEIGHT = 1; public static double ADMIN_STROKE_OPACITY = 1.0D; public static Color ADMIN_FILL_COLOR = Color.BLUE; public static double ADMIN_FILL_OPACITY = 0.2D; public static Color EXPIRING_STROKE_COLOR = Color.PINK; public static int EXPIRING_STROKE_WEIGHT = 1; public static double EXPIRING_STROKE_OPACITY = 1.0D; public static Color EXPIRING_FILL_COLOR = Color.PINK; public static double EXPIRING_FILL_OPACITY = 0.2D; public static String STRINGS_PUBLIC = "Public"; public static String CLAIM_TOOLTIP = "Claim Owner: {owner}
" + "Permission Trust: {managers}
" + "Trust: {builders}
" + "Container Trust: {containers}
" + "Access Trust: {accessors}"; public static String ADMIN_CLAIM_TOOLTIP = "Administrator Claim
" + "Permission Trust: {managers}
" + "Trust: {builders}
" + "Container Trust: {containers}
" + "Access Trust: {accessors}"; public static String EXPIRING_CLAIM_TOOLTIP = "Temporary Claim
" + "Permission Trust: {managers}
" + "Trust: {builders}
" + "Container Trust: {containers}
" + "Access Trust: {accessors}
" + "Expires: {expiretime}" ; private static void mapSettings() { CONTROL_LABEL = config.getString("settings.control.label", CONTROL_LABEL); CONTROL_SHOW = config.getBoolean("settings.control.show", CONTROL_SHOW); CONTROL_HIDE = config.getBoolean("settings.control.hide-by-default", CONTROL_HIDE); GRID_CONTROL_LABEL = config.getString("settings.grid.label", GRID_CONTROL_LABEL); GRID_CONTROL_SHOW = config.getBoolean("settings.grid.show", GRID_CONTROL_SHOW); GRID_CONTROL_HIDE = config.getBoolean("settings.grid.hide-by-default", GRID_CONTROL_HIDE); UPDATE_INTERVAL = config.getInt("settings.update-interval", UPDATE_INTERVAL); STROKE_COLOR = config.getColor("settings.style.regular-claim.stroke.color", STROKE_COLOR); STROKE_WEIGHT = config.getInt("settings.style.regular-claim.stroke.weight", STROKE_WEIGHT); STROKE_OPACITY = config.getDouble("settings.regular-claim.style.stroke.opacity", STROKE_OPACITY); FILL_COLOR = config.getColor("settings.style.regular-claim.fill.color", FILL_COLOR); FILL_OPACITY = config.getDouble("settings.style.regular-claim.fill.opacity", FILL_OPACITY); ADMIN_STROKE_COLOR = config.getColor("settings.style.admin-claim.stroke.color", ADMIN_STROKE_COLOR); ADMIN_STROKE_WEIGHT = config.getInt("settings.style.admin-claim.stroke.weight", ADMIN_STROKE_WEIGHT); ADMIN_STROKE_OPACITY = config.getDouble("settings.admin-claim.style.stroke.opacity", ADMIN_STROKE_OPACITY); ADMIN_FILL_COLOR = config.getColor("settings.style.admin-claim.fill.color", ADMIN_FILL_COLOR); ADMIN_FILL_OPACITY = config.getDouble("settings.style.admin-claim.fill.opacity", ADMIN_FILL_OPACITY); EXPIRING_STROKE_COLOR = config.getColor("settings.style.expiring-claim.stroke.color", EXPIRING_STROKE_COLOR); EXPIRING_STROKE_WEIGHT = config.getInt("settings.style.expiring-claim.stroke.weight", EXPIRING_STROKE_WEIGHT); EXPIRING_STROKE_OPACITY = config.getDouble("settings.expiring-claim.style.stroke.opacity", EXPIRING_STROKE_OPACITY); EXPIRING_FILL_COLOR = config.getColor("settings.style.expiring-claim.fill.color", EXPIRING_FILL_COLOR); EXPIRING_FILL_OPACITY = config.getDouble("settings.style.expiring-claim.fill.opacity", EXPIRING_FILL_OPACITY); STRINGS_PUBLIC = config.getString("settings.strings.public", STRINGS_PUBLIC); CLAIM_TOOLTIP = config.getString("settings.region.tooltip.regular-claim", CLAIM_TOOLTIP); ADMIN_CLAIM_TOOLTIP = config.getString("settings.region.tooltip.admin-claim", ADMIN_CLAIM_TOOLTIP); EXPIRING_CLAIM_TOOLTIP = config.getString("settings.region.tooltip.expiring-claim", EXPIRING_CLAIM_TOOLTIP); } public static int ignoreClaimWarningDelay = 20 * 600; public static String ignoreClaimWarningMessage = " has had ignore claims on for