package fr.xephi.authme.settings.properties; import fr.xephi.authme.output.LogLevel; import fr.xephi.authme.settings.domain.Comment; import fr.xephi.authme.settings.domain.Property; import fr.xephi.authme.settings.domain.SettingsClass; import static fr.xephi.authme.settings.domain.Property.newProperty; public class PluginSettings implements SettingsClass { @Comment("The name shown in the help messages") public static final Property HELP_HEADER = newProperty("settings.helpHeader", "AuthMeReloaded"); @Comment({ "Do you want to enable the session feature?", "If enabled, when a player authenticates successfully,", "his IP and his nickname is saved.", "The next time the player joins the server, if his IP", "is the same as last time and the timeout hasn't", "expired, he will not need to authenticate." }) public static final Property SESSIONS_ENABLED = newProperty("settings.sessions.enabled", false); @Comment({ "After how many minutes should a session expire?", "Remember that sessions will end only after the timeout, and", "if the player's IP has changed but the timeout hasn't expired,", "the player will be kicked from the server due to invalid session" }) public static final Property SESSIONS_TIMEOUT = newProperty("settings.sessions.timeout", 10); @Comment({ "Should the session expire if the player tries to log in with", "another IP address?" }) public static final Property SESSIONS_EXPIRE_ON_IP_CHANGE = newProperty("settings.sessions.sessionExpireOnIpChange", true); @Comment("Message language, available: en, de, br, cz, pl, fr, ru, hu, sk, es, zhtw, fi, zhcn, lt, it, ko, pt") public static final Property MESSAGES_LANGUAGE = newProperty("settings.messagesLanguage", "en"); @Comment({ "Take care with this option; if you want", "to use group switching of AuthMe", "for unloggedIn players, set this setting to true.", "Default is false." }) public static final Property ENABLE_PERMISSION_CHECK = newProperty("permission.EnablePermissionCheck", false); @Comment({ "Keeps collisions disabled for logged players", "Works only with MC 1.9" }) public static final Property KEEP_COLLISIONS_DISABLED = newProperty("settings.restrictions.keepCollisionsDisabled", false); @Comment({ "Log level: INFO, FINE, DEBUG. Use INFO for general messages,", "FINE for some additional detailed ones (like password failed),", "and DEBUG for debugging" }) public static final Property LOG_LEVEL = newProperty(LogLevel.class, "settings.logLevel", LogLevel.FINE); private PluginSettings() { } }