package eu.carrade.amaury.UHCReloaded;
import eu.carrade.amaury.UHCReloaded.borders.MapShape;
import eu.carrade.amaury.UHCReloaded.game.Cage;
import eu.carrade.amaury.UHCReloaded.teams.TeamManager;
import eu.carrade.amaury.UHCReloaded.utils.UHSound;
import fr.zcraft.zlib.components.configuration.Configuration;
import fr.zcraft.zlib.components.configuration.ConfigurationItem;
import fr.zcraft.zlib.components.configuration.ConfigurationList;
import fr.zcraft.zlib.components.configuration.ConfigurationMap;
import fr.zcraft.zlib.components.configuration.ConfigurationSection;
import fr.zcraft.zlib.components.configuration.ConfigurationValueHandlers;
import org.bukkit.Material;
import org.bukkit.Sound;
import org.bukkit.inventory.meta.BannerMeta;
import org.bukkit.util.Vector;
import static fr.zcraft.zlib.components.configuration.ConfigurationItem.*;
public class UHConfig extends Configuration
{
static public final ConfigurationItem<String> LANG = item("lang", "");
static public final ConfigurationItem<Boolean> METRICS = item("metrics", true);
static public final EpisodesSection EPISODES = section("episodes", EpisodesSection.class);
static public class EpisodesSection extends ConfigurationSection
{
public final ConfigurationItem<Boolean> ENABLED = item("enabled", true);
public final ConfigurationItem<String> LENGTH = item("length", "20:00");
public final ConfigurationItem<Boolean> TITLE = item("title", true);
}
static public final MapSection MAP = section("map", MapSection.class);
static public class MapSection extends ConfigurationSection
{
public final ConfigurationItem<Integer> SIZE = item("size", 2000);
public final ConfigurationItem<MapShape> SHAPE = item("shape", MapShape.SQUARED);
public final WallSection WALL = section("wall", WallSection.class);
static public class WallSection extends ConfigurationSection
{
public final ConfigurationItem<Integer> HEIGHT = item("height", 128);
public final BlockSection BLOCK = section("block", BlockSection.class);
static public class BlockSection extends ConfigurationSection
{
public final ConfigurationItem<Material> REPLACE_AIR = item("replaceAir", Material.GLASS);
public final ConfigurationItem<Material> REPLACE_SOLID = item("replaceSolid", Material.BEDROCK);
}
}
public final BorderSection BORDER = section("border", BorderSection.class);
static public class BorderSection extends ConfigurationSection
{
public final ConfigurationItem<String> MOTOR = item("motor", "vanilla");
public final ConfigurationItem<Double> DAMAGES_BUFFER = item("damagesBuffer", 5d);
public final ConfigurationItem<Double> DAMAGES_AMOUNT = item("damagesAmount", 0.2);
public final ConfigurationItem<Integer> WARNING_DISTANCE = item("warningDistance", 5);
public final ShrinkingSection SHRINKING = section("shrinking", ShrinkingSection.class);
static public class ShrinkingSection extends ConfigurationSection
{
public final ConfigurationItem<Boolean> ENABLED = item("enabled", false);
public final ConfigurationItem<String> STARTS_AFTER = item("startsAfter", "30:00");
public final ConfigurationItem<String> SHRINKS_DURING = item("shrinksDuring", "2:00:00");
public final ConfigurationItem<Integer> DIAMETER_AFTER_SHRINK = item("diameterAfterShrink", 200);
}
public final ConfigurationItem<Integer> WARNING_INTERVAL = item("warningInterval", 90);
}
public final SpawnPointsSection SPAWN_POINTS = section("spawnPoints", SpawnPointsSection.class);
static public class SpawnPointsSection extends ConfigurationSection
{
public final ConfigurationItem<Boolean> DONT_GENERATE_ABOVE_WATER = item("dontGenerateAboveWater", true);
}
}
static public final DaylightCycleSection DAYLIGHT_CYCLE = section("daylightCycle", DaylightCycleSection.class);
static public class DaylightCycleSection extends ConfigurationSection
{
public final ConfigurationItem<Boolean> DO = item("do", false);
public final ConfigurationItem<Long> TIME = item("time", 6000l);
}
static public final ScoreboardSection SCOREBOARD = section("scoreboard", ScoreboardSection.class);
static public class ScoreboardSection extends ConfigurationSection
{
public final ConfigurationItem<String> TITLE = item("title", "Kill the Patrick");
public final ConfigurationItem<Boolean> ENABLED = item("enabled", true);
public final ConfigurationItem<Boolean> EPISODE = item("episode", true);
public final ConfigurationItem<Boolean> PLAYERS = item("players", true);
public final ConfigurationItem<Boolean> TEAMS = item("teams", true);
public final OwnTeamSection OWN_TEAM = section("ownTeam", OwnTeamSection.class);
static public class OwnTeamSection extends ConfigurationSection
{
public final ConfigurationItem<Boolean> ENABLED = item("enabled", true);
public final TitleSection TITLE = section("title", TitleSection.class);
static public class TitleSection extends ConfigurationSection
{
public final ConfigurationItem<String> COLOR = item("color", "");
public final ConfigurationItem<Boolean> USE_TEAM_NAME = item("useTeamName", false);
}
public final ContentSection CONTENT = section("content", ContentSection.class);
static public class ContentSection extends ConfigurationSection
{
public final ConfigurationItem<Boolean> DISPLAY_HEARTS = item("displayHearts", true);
public final ConfigurationItem<Boolean> COLOR_NAME = item("colorName", false);
public final ConfigurationItem<Boolean> STRIKE_DEAD_PLAYERS = item("strikeDeadPlayers", false);
public final LoginStateSection LOGIN_STATE = section("loginState", LoginStateSection.class);
static public class LoginStateSection extends ConfigurationSection
{
public final ConfigurationItem<Boolean> ITALIC = item("italic", true);
public final ConfigurationItem<String> SUFFIX = item("suffix", "➥");
}
public final DisplayMetPlayersOnlySection DISPLAY_MET_PLAYERS_ONLY = section("displayMetPlayersOnly", DisplayMetPlayersOnlySection.class);
static public class DisplayMetPlayersOnlySection extends ConfigurationSection
{
public final ConfigurationItem<Boolean> ENABLED = item("enabled", false);
public final ConfigurationItem<Double> DISPLAYED_WHEN_CLOSER_THAN = item("displayedWhenCloserThan", 10d);
}
}
}
public final BorderSection BORDER = section("border", BorderSection.class);
static public class BorderSection extends ConfigurationSection
{
public final ConfigurationItem<Boolean> DISPLAYED = item("displayed", true);
public final ConfigurationItem<Boolean> DISPLAY_DIAMETER = item("displayDiameter", false);
}
public final ConfigurationItem<Boolean> KILLS = item("kills", true);
public final ConfigurationItem<Boolean> TIMER = item("timer", true);
public final ConfigurationItem<Boolean> FREEZE_STATUS = item("freezeStatus", true);
public final ConfigurationItem<Boolean> HEALTH = item("health", true);
}
static public final PlayersListSection PLAYERS_LIST = section("playersList", PlayersListSection.class);
static public class PlayersListSection extends ConfigurationSection
{
public final WaitingTimeSection WAITING_TIME = section("waitingTime", WaitingTimeSection.class);
static public class WaitingTimeSection extends ConfigurationSection
{
public final ConfigurationItem<String> HEADER = item("header", "{title}");
public final ConfigurationItem<String> FOOTER = item("footer", "");
}
public final InGameTimeSection IN_GAME_TIME = section("inGameTime", InGameTimeSection.class);
static public class InGameTimeSection extends ConfigurationSection
{
public final ConfigurationItem<String> HEADER = item("header", "{title}");
public final ConfigurationItem<String> FOOTER = item("footer", "§a{episodeText} §7- §a{playersText} §7- §a{teamsText}");
}
}
static public final MotdSection MOTD = section("motd", MotdSection.class);
static public class MotdSection extends ConfigurationSection
{
public final ConfigurationItem<Boolean> ENABLED = item("enabled", false);
public final ConfigurationItem<Boolean> DISPLAY_MATCH_NAME = item("displayMatchName", true);
public final ConfigurationItem<String> MATCH_NAME_PREFIX = item("matchNamePrefix", "");
}
static public final ConfigurationItem<Boolean> TELEPORT_TO_SPAWN_IF_NOT_STARTED = item("teleportToSpawnIfNotStarted", true);
static public final AchievementsSection ACHIEVEMENTS = section("achievements", AchievementsSection.class);
static public class AchievementsSection extends ConfigurationSection
{
public final ConfigurationItem<Boolean> RESET_ACHIEVEMENTS_AT_STARTUP = item("resetAchievementsAtStartup", true);
public final ConfigurationItem<Boolean> DISABLE_ACHIEVEMENTS_BEFORE_START = item("disableAchievementsBeforeStart", true);
}
static public final StatisticsSection STATISTICS = section("statistics", StatisticsSection.class);
static public class StatisticsSection extends ConfigurationSection
{
public final ConfigurationItem<Boolean> DISABLE_STATISTICS_BEFORE_START = item("disableStatisticsBeforeStart", true);
}
static public final BeforeStartSection BEFORE_START = section("before-start", BeforeStartSection.class);
static public class BeforeStartSection extends ConfigurationSection
{
public final InventorySection INVENTORY = section("inventory", InventorySection.class);
static public class InventorySection extends ConfigurationSection
{
public final ConfigurationItem<Boolean> CLEAR = item("clear", true);
public final ConfigurationItem<Boolean> PREVENT_USAGE = item("preventUsage", true);
public final ConfigurationItem<Boolean> ALLOW_FOR_BUILDERS = item("allowForBuilders", true);
}
public final TeamSelectorSection TEAM_SELECTOR = section("teamSelector", TeamSelectorSection.class);
static public class TeamSelectorSection extends ConfigurationSection
{
public final ConfigurationItem<Boolean> ENABLED = item("enabled", true);
public final ConfigurationItem<Material> ITEM = item("item", Material.NETHER_STAR);
}
public final ConfigurationItem<Boolean> TEAM_IN_ACTION_BAR = item("teamInActionBar", true);
public final ConfigurationItem<Boolean> ENABLE_PVP = item("enablePVP", false);
}
static public final StartSection START = section("start", StartSection.class);
static public class StartSection extends ConfigurationSection
{
public final SlowSection SLOW = section("slow", SlowSection.class);
static public class SlowSection extends ConfigurationSection
{
public final ConfigurationItem<Long> DELAY_BETWEEN_TP = item("delayBetweenTP", 3l);
public final ConfigurationItem<Boolean> BROADCAST_PROGRESS = item("broadcastProgress", true);
public final CagesSection CAGES = section("cages", CagesSection.class);
static public class CagesSection extends ConfigurationSection
{
public final ConfigurationItem<Boolean> ENABLED = item("enabled", true);
public final ConfigurationItem<Cage.CageType> TYPE = item("type", Cage.CageType.TEAM_COLOR_TRANSPARENT);
public final ConfigurationItem<Material> CUSTOM_BLOCK = item("customBlock", Material.BARRIER);
public final ConfigurationItem<Boolean> BUILD_CEILING = item("buildCeiling", false);
public final ConfigurationItem<Boolean> VISIBLE_WALLS = item("visibleWalls", false);
public final ConfigurationItem<Integer> RADIUS = item("radius", 1);
public final ConfigurationItem<Integer> HEIGHT = item("height", 3);
}
}
public final SoundSection SOUND = section("sound", SoundSection.class);
public final ConfigurationItem<Boolean> DISPLAY_TITLE = item("displayTitle", true);
public final ConfigurationItem<String> GRACE_PERIOD = item("gracePeriod", "00:30");
public final ConfigurationItem<Boolean> BROADCAST_GRACE_END = item("broadcastGraceEnd", true);
public final ConfigurationItem<String> PEACE_PERIOD = item("peacePeriod", "00");
public final ConfigurationItem<String> SURFACE_MOBS_FREE_PERIOD = item("surfaceMobsFreePeriod", "15:00");
}
static public final DeathSection DEATH = section("death", DeathSection.class);
static public class DeathSection extends ConfigurationSection
{
public final MessagesSection MESSAGES = section("messages", MessagesSection.class);
static public class MessagesSection extends ConfigurationSection
{
public final ConfigurationItem<Boolean> NOTIFY_IF_TEAM_HAS_FALLEN = item("notifyIfTeamHasFallen", true);
public final ConfigurationItem<String> DEATH_MESSAGES_FORMAT = item("deathMessagesFormat", "§6");
public final ConfigurationItem<String> TEAM_DEATH_MESSAGES_FORMAT = item("teamDeathMessagesFormat", "§6");
}
public final KickSection KICK = section("kick", KickSection.class);
static public class KickSection extends ConfigurationSection
{
public final ConfigurationItem<Boolean> DO = item("do", false);
public final ConfigurationItem<Integer> TIME = item("time", 30);
public final ConfigurationItem<Boolean> ALLOW_RECONNECT = item("allow-reconnect", true);
}
public final HeadSection HEAD = section("head", HeadSection.class);
static public class HeadSection extends ConfigurationSection
{
public final ConfigurationItem<Boolean> DROP = item("drop", true);
public final ConfigurationItem<Boolean> PVP_ONLY = item("pvpOnly", false);
}
public final GiveXpToKillerSection GIVE_XP_TO_KILLER = section("give-xp-to-killer", GiveXpToKillerSection.class);
static public class GiveXpToKillerSection extends ConfigurationSection
{
public final ConfigurationItem<Integer> LEVELS = item("levels", 2);
public final ConfigurationItem<Boolean> ONLY_OTHER_TEAM = item("onlyOtherTeam", true);
}
public final AnnouncementsSection ANNOUNCEMENTS = section("announcements", AnnouncementsSection.class);
static public class AnnouncementsSection extends ConfigurationSection
{
public final ConfigurationItem<Boolean> LIGHTNING_STRIKE = item("lightning-strike", false);
public final SoundSection SOUND = section("sound", SoundSection.class);
}
}
static public final ConfigurationItem<Boolean> COLORIZE_CHAT = item("colorizeChat", true);
static public final GameplayChangesSection GAMEPLAY_CHANGES = section("gameplay-changes", GameplayChangesSection.class);
static public class GameplayChangesSection extends ConfigurationSection
{
public final ConfigurationItem<Boolean> NATURAL_REGENERATION = item("naturalRegeneration", false);
public final ConfigurationItem<Boolean> WEATHER = item("weather", true);
public final ConfigurationItem<Boolean> REPLACE_GHAST_TEARS_WITH_GOLD = item("replaceGhastTearsWithGold", true);
public final ConfigurationItem<Boolean> CRAFT_GOLDEN_MELON_WITH_GOLD_BLOCK = item("craftGoldenMelonWithGoldBlock", true);
public final CraftGoldenAppleFromHeadSection CRAFT_GOLDEN_APPLE_FROM_HEAD = section("craftGoldenAppleFromHead", CraftGoldenAppleFromHeadSection.class);
static public class CraftGoldenAppleFromHeadSection extends ConfigurationSection
{
public final FromHumanSection FROM_HUMAN = section("fromHuman", FromHumanSection.class);
static public class FromHumanSection extends ConfigurationSection
{
public final ConfigurationItem<Boolean> DO = item("do", true);
public final ConfigurationItem<Integer> NUMBER_CRAFTED = item("numberCrafted", 2);
public final ConfigurationItem<Boolean> ADD_LORE = item("addLore", true);
public final ConfigurationItem<Boolean> CRAFT_NOTCH_APPLE = item("craftNotchApple", false);
}
public final FromWitherSection FROM_WITHER = section("fromWither", FromWitherSection.class);
static public class FromWitherSection extends ConfigurationSection
{
public final ConfigurationItem<Boolean> DO = item("do", true);
public final ConfigurationItem<Integer> NUMBER_CRAFTED = item("numberCrafted", 1);
public final ConfigurationItem<Boolean> ADD_LORE = item("addLore", true);
public final ConfigurationItem<Boolean> CRAFT_NOTCH_APPLE = item("craftNotchApple", false);
}
}
public final GoldenAppleSection GOLDEN_APPLE = section("goldenApple", GoldenAppleSection.class);
static public class GoldenAppleSection extends ConfigurationSection
{
public final RegenerationSection REGENERATION = section("regeneration", RegenerationSection.class);
static public class RegenerationSection extends ConfigurationSection
{
public final ConfigurationItem<Integer> NORMAL = item("normal", 4);
public final ConfigurationItem<Integer> NOTCH = item("notch", 180);
public final ConfigurationItem<Integer> FROM_NORMAL_HEAD = item("fromNormalHead", 4);
public final ConfigurationItem<Integer> FROM_NOTCH_HEAD = item("fromNotchHead", 180);
}
public final ConfigurationItem<Boolean> DISABLE_NOTCH_APPLES = item("disableNotchApples", false);
}
public final ConfigurationItem<Boolean> DISABLE_ENDERPEARLS_DAMAGES = item("disableEnderpearlsDamages", true);
public final ConfigurationItem<Boolean> DISABLE_LEVEL_II_POTIONS = item("disableLevelIIPotions", false);
public final WitchSection WITCH = section("witch", WitchSection.class);
static public class WitchSection extends ConfigurationSection
{
public final ConfigurationItem<Boolean> DISABLE_NATURAL_SPAWN = item("disableNaturalSpawn", false);
public final ConfigurationItem<Boolean> DISABLE_LIGHTNING_SPAWN = item("disableLightningSpawn", false);
}
public final RabbitSection RABBIT = section("rabbit", RabbitSection.class);
static public class RabbitSection extends ConfigurationSection
{
public final ConfigurationItem<Boolean> KILLER_RABBIT_SPAWN = item("killerRabbitSpawn", true);
public final ConfigurationItem<Double> KILLER_RABBIT_SPAWN_PROBABILITY = item("killerRabbitSpawnProbability", 0.05);
public final ConfigurationItem<String> KILLER_RABBIT_NAME = item("killerRabbitName", "The Killer Rabbit of Caerbannog");
}
public final CompassSection COMPASS = section("compass", CompassSection.class);
static public class CompassSection extends ConfigurationSection
{
public final ConfigurationItem<Boolean> ENABLED = item("enabled", true);
public final ConfigurationItem<String> RECIPE = item("recipe", "medium");
}
}
static public final TeamsOptionsSection TEAMS_OPTIONS = section("teams-options", TeamsOptionsSection.class);
static public class TeamsOptionsSection extends ConfigurationSection
{
public final ConfigurationItem<Boolean> CAN_SEE_FRIENDLY_INVISIBLES = item("canSeeFriendlyInvisibles", true);
public final ConfigurationItem<Boolean> ALLOW_FRIENDLY_FIRE = item("allowFriendlyFire", true);
public final ConfigurationItem<Integer> MAX_PLAYERS_PER_TEAM = item("maxPlayersPerTeam", 0);
public final ConfigurationItem<Boolean> RANDOM_COLORS = item("randomColors", true);
public final BannerSection BANNER = section("banner", BannerSection.class);
static public class BannerSection extends ConfigurationSection
{
public final ShapeSection SHAPE = section("shape", ShapeSection.class);
static public class ShapeSection extends ConfigurationSection
{
public final ConfigurationItem<Boolean> WRITE_LETTER = item("writeLetter", true);
public final ConfigurationItem<Boolean> ADD_BORDER = item("addBorder", true);
}
public final GiveSection GIVE = section("give", GiveSection.class);
static public class GiveSection extends ConfigurationSection
{
public final ConfigurationItem<Boolean> PLACE_ON_SPAWN = item("placeOnSpawn", true);
public final ConfigurationItem<Boolean> GIVE_IN_HOTBAR = item("giveInHotbar", false);
public final ConfigurationItem<Boolean> GIVE_IN_HEAD = item("giveInHead", false);
}
public final ShieldSection SHIELDS = section("shields", ShieldSection.class);
static public class ShieldSection extends ConfigurationSection
{
public final ConfigurationItem<Boolean> ADD_ON_SHIELDS = item("addOnShields", true);
}
}
public final GuiSection GUI = section("gui", GuiSection.class);
static public class GuiSection extends ConfigurationSection
{
public final ConfigurationItem<Boolean> DISPLAY_PLAYERS_IN_TEAMS = item("displayPlayersInTeams", true);
public final ConfigurationItem<Boolean> AUTO_DISPLAY = item("autoDisplay", true);
public final ConfigurationItem<Integer> DELAY = item("delay", 4);
}
public final ChestGuiSection CHEST_GUI = section("chestGui", ChestGuiSection.class);
static public class ChestGuiSection extends ConfigurationSection
{
public final DisplaySection DISPLAY = section("display", DisplaySection.class);
static public class DisplaySection extends ConfigurationSection
{
public final ConfigurationItem<String> TEAM_ITEM = item("teamItem", "banner");
public final ConfigurationItem<Boolean> GLOW_ON_SELECTED_TEAM = item("glowOnSelectedTeam", true);
}
}
public final TeamChatSection TEAM_CHAT = section("teamChat", TeamChatSection.class);
static public class TeamChatSection extends ConfigurationSection
{
public final ConfigurationItem<Boolean> DISABLE_LOCK_ON_DEATH = item("disableLockOnDeath", true);
public final ConfigurationItem<Boolean> LOG = item("log", false);
}
}
static public final HardcoreHeartsSection HARDCORE_HEARTS = section("hardcore-hearts", HardcoreHeartsSection.class);
static public class HardcoreHeartsSection extends ConfigurationSection
{
public final ConfigurationItem<Boolean> DISPLAY = item("display", true);
public final ConfigurationItem<Boolean> RESPAWN_MESSAGE = item("respawnMessage", false);
}
static public final AutoRespawnSection AUTO_RESPAWN = section("auto-respawn", AutoRespawnSection.class);
static public class AutoRespawnSection extends ConfigurationSection
{
public final ConfigurationItem<Boolean> DO = item("do", true);
public final ConfigurationItem<Integer> DELAY = item("delay", 6);
}
static public final FinishSection FINISH = section("finish", FinishSection.class);
static public class FinishSection extends ConfigurationSection
{
public final AutoSection AUTO = section("auto", AutoSection.class);
static public class AutoSection extends ConfigurationSection
{
public final ConfigurationItem<Boolean> DO = item("do", true);
public final ConfigurationItem<Integer> TIME_AFTER_LAST_DEATH = item("timeAfterLastDeath", 3);
}
public final ConfigurationItem<Boolean> MESSAGE = item("message", true);
public final ConfigurationItem<Boolean> TITLE = item("title", true);
public final FireworksSection FIREWORKS = section("fireworks", FireworksSection.class);
static public class FireworksSection extends ConfigurationSection
{
public final ConfigurationItem<Boolean> ENABLED = item("enabled", true);
public final ConfigurationItem<Long> DURATION = item("duration", 10l);
public final ConfigurationItem<Double> AREA_SIZE = item("areaSize", 6d);
}
}
static public final DynmapSection DYNMAP = section("dynmap", DynmapSection.class);
static public class DynmapSection extends ConfigurationSection
{
public final ConfigurationItem<Boolean> SHOW_SPAWN_LOCATIONS = item("showSpawnLocations", true);
public final ConfigurationItem<Boolean> SHOW_DEATH_LOCATIONS = item("showDeathLocations", true);
}
static public final ConfigurationItem<Boolean> SPECTATOR_MODE_WHEN_NEW_PLAYER_JOIN_AFTER_START = item("spectatorModeWhenNewPlayerJoinAfterStart", true);
static public final RulesSection RULES = section("rules", RulesSection.class);
static public class RulesSection extends ConfigurationSection
{
public final DisplaySection DISPLAY = section("display", DisplaySection.class);
static public class DisplaySection extends ConfigurationSection
{
public final ConfigurationItem<Boolean> ON_JOIN = item("onJoin", false);
public final ConfigurationItem<Boolean> ON_START = item("onStart", true);
}
public final ConfigurationList<String> RULES = list("rules", String.class);
}
static public final CommandsSection COMMANDS = section("commands", CommandsSection.class);
static public class CommandsSection extends ConfigurationSection
{
public final ConfigurationList<String> EXECUTE_SERVER_START = list("execute-server-start", String.class);
public final ConfigurationList<String> EXECUTE_START = list("execute-start", String.class);
public final ConfigurationList<String> EXECUTE_END = list("execute-end", String.class);
}
static public final ProtipsSection PROTIPS = section("protips", ProtipsSection.class);
static public class ProtipsSection extends ConfigurationSection
{
public final SoundSection SOUND = section("sound", SoundSection.class);
public final TeamchatSection TEAMCHAT = section("teamchat", TeamchatSection.class);
static public class TeamchatSection extends ConfigurationSection
{
public final ConfigurationItem<Boolean> USE_T_COMMAND = item("useTCommand", true);
public final ConfigurationItem<Boolean> LOCK = item("lock", true);
public final ConfigurationItem<Boolean> USE_G_COMMAND = item("useGCommand", true);
}
public final CraftsSection CRAFTS = section("crafts", CraftsSection.class);
static public class CraftsSection extends ConfigurationSection
{
public final ConfigurationItem<Boolean> GOLDEN_HEAD = item("goldenHead", true);
public final ConfigurationItem<Boolean> COMPASS_EASY = item("compassEasy", true);
public final ConfigurationItem<Boolean> COMPASS_MEDIUM = item("compassMedium", true);
public final ConfigurationItem<Boolean> COMPASS_HARD = item("compassHard", true);
public final ConfigurationItem<Boolean> GLISTERING_MELON = item("glisteringMelon", true);
public final ConfigurationItem<Boolean> NO_ENCH_GOLDEN_APPLE = item("noEnchGoldenApple", true);
}
public final StartSection START = section("start", StartSection.class);
static public class StartSection extends ConfigurationSection
{
public final ConfigurationItem<Boolean> INVINCIBILITY = item("invincibility", true);
}
}
static public final ConfigurationList<Vector> SPAWN_POINTS = list("spawnpoints", Vector.class);
static public final ConfigurationList<String> TEAMS = list("teams", String.class);
static public final ConfigurationMap<String, BannerMeta> TEAM_BANNERS = map("teambanners", String.class, BannerMeta.class);
/* ** Helper sub-sections ** */
static public class SoundSection extends ConfigurationSection
{
public final ConfigurationItem<Sound> NAME = item("name", Sound.class);
public final ConfigurationItem<Integer> VOLUME = item("volume", 1);
public final ConfigurationItem<Integer> PITCH = item("pitch", 1);
}
/* ** Helper value handlers ** */
static
{
ConfigurationValueHandlers.registerHandlers(TeamManager.class);
ConfigurationValueHandlers.registerHandlers(UHSound.class);
}
}