package cc.reconnected.server.config; import java.util.ArrayList; import java.util.List; public class Config { Config() { } public HttpApi httpApi = new HttpApi(); public Afk afk = new Afk(); public DirectMessages directMessages = new DirectMessages(); public TeleportRequests teleportRequests = new TeleportRequests(); public Homes homes = new Homes(); public CustomTabList customTabList = new CustomTabList(); public NearCommand nearCommand = new NearCommand(); public AutoRestart autoRestart = new AutoRestart(); public TextFormats textFormats = new TextFormats(); public static class HttpApi { public boolean enableHttpApi = true; public int httpPort = 25581; } public static class Afk { public int afkTimeTrigger = 300; public String afkMessage = " is now AFK"; public String afkReturnMessage = " is no longer AFK"; public String afkTag = "[AFK] "; } public static class DirectMessages { public String tellMessage = "[ ] "; public String tellMessageSpy = "\uD83D\uDC41 [] "; } public static class TeleportRequests { public int teleportRequestTimeout = 120; } public static class Homes { public int maxHomes = -1; } public static class CustomTabList { public boolean enableTabList = true; public int tabListTickDelay = 5; public double tabPhasePeriod = 300; public ArrayList tabHeader = new ArrayList<>(List.of( " " )); public ArrayList tabFooter = new ArrayList<>(List.of( " " )); public String playerTabName = "%rcc-server:afk%%player:displayname_visual%"; } public static class NearCommand { public int nearCommandMaxRange = 48; public int nearCommandDefaultRange = 32; } public static class AutoRestart { public boolean enableAutoRestart = true; public String restartBarLabel = "Server restarting in "; public String restartKickMessage = "The server is restarting!"; public String restartChatMessage = "The server is restarting in "; public ArrayList restartAt = new ArrayList<>(List.of( "06:00", "18:00" )); public String restartSound = "minecraft:block.note_block.bell"; public float restartSoundPitch = 0.9f; public ArrayList restartNotifications = new ArrayList<>(List.of( 600, 300, 120, 60, 30, 15, 10, 5, 4, 3, 2, 1 )); } public static class TextFormats { public record NameFormat(String group, String format) { } public boolean enableChatMarkdown = true; public ArrayList nameFormats = new ArrayList<>(List.of( new NameFormat("admin", "%player:name%"), new NameFormat("default", "%player:name%") )); public String chatFormat = "${player}: ${message}"; public String emoteFormat = "\uD83D\uDC64 ${player} ${message}"; public String joinFormat = "+ ${player} joined!"; public String joinRenamedFormat = "+ ${player} joined! (Previously known as ${previousName})"; public String leaveFormat = "- ${player} left!"; public String deathFormat = "\u2620 ${message}"; } }