diff --git a/src/main/java/io/ib67/sfcraft/SFCraftInitializer.java b/src/main/java/io/ib67/sfcraft/SFCraftInitializer.java index 4173818..59b6069 100644 --- a/src/main/java/io/ib67/sfcraft/SFCraftInitializer.java +++ b/src/main/java/io/ib67/sfcraft/SFCraftInitializer.java @@ -59,7 +59,7 @@ public class SFCraftInitializer extends GuiceModInitializer { SFCraft.server = minecraftServer; SFCraft.injector = getInjector(); getModuleManager().switchGlobalState(Lifecycle.State.ENABLED); - log.info("Load completed! "+getModuleManager().getModules().size()+" modules were loaded."); + log.info("Load completed! " + getModuleManager().getModules().size() + " modules were loaded."); } @Override diff --git a/src/main/java/io/ib67/sfcraft/module/OfflineExemptModule.java b/src/main/java/io/ib67/sfcraft/module/OfflineExemptModule.java index ca89365..6ef571d 100644 --- a/src/main/java/io/ib67/sfcraft/module/OfflineExemptModule.java +++ b/src/main/java/io/ib67/sfcraft/module/OfflineExemptModule.java @@ -95,7 +95,7 @@ public class OfflineExemptModule extends ServerModule { private void onPreLogin(String s, ClientConnection connection, Consumer textConsumer, boolean offline) { if (!state && offline) { - textConsumer.accept(Text.of("盗版赦免现已关闭")); + textConsumer.accept(Text.of("§c盗版赦免现已关闭")); } } } diff --git a/src/main/java/io/ib67/sfcraft/module/PlayLimitModule.java b/src/main/java/io/ib67/sfcraft/module/PlayLimitModule.java index 56838ae..5c45189 100644 --- a/src/main/java/io/ib67/sfcraft/module/PlayLimitModule.java +++ b/src/main/java/io/ib67/sfcraft/module/PlayLimitModule.java @@ -18,6 +18,7 @@ import net.minecraft.server.ServerMetadata; import net.minecraft.server.command.CommandManager; import net.minecraft.server.command.ServerCommandSource; import net.minecraft.text.Text; +import net.minecraft.util.Colors; import java.net.InetSocketAddress; import java.util.HashSet; @@ -32,6 +33,7 @@ public class PlayLimitModule extends ServerModule { @Inject SFConfig config; + @Override public void onInitialize() { SFCallbacks.PRE_LOGIN.register(this::onPreLogin); @@ -84,7 +86,7 @@ public class PlayLimitModule extends ServerModule { try { var clock = geoIPService.clockOf(address.getAddress()); if (config.isClosed(clock) && !"iceBear67".equals(currentPlayer)) { - final var msg = "服务器尚未开放\n服务器维护时间: %1$d~%2$d\n你的下午不值得浪费在游戏上,晚点再来吧!"; + final var msg = "§c§l服务器尚未开放\n\n§f服务器维护时间: §l%1$d~%2$d\n§c你的下午不值得浪费在游戏上,晚点再来吧!"; disconnect.accept(Text.of(String.format(msg, config.maintainceStartHour, config.maintainceEndHour))); } } catch (Exception ignored) { diff --git a/src/main/java/io/ib67/sfcraft/module/WelcomeModule.java b/src/main/java/io/ib67/sfcraft/module/WelcomeModule.java index 5f3c47c..344c74c 100644 --- a/src/main/java/io/ib67/sfcraft/module/WelcomeModule.java +++ b/src/main/java/io/ib67/sfcraft/module/WelcomeModule.java @@ -58,12 +58,13 @@ public class WelcomeModule extends ServerModule { var player = serverPlayNetworkHandler.getPlayer(); if (!player.getCommandTags().contains("has_joined_before") && isEnabled()) { player.addCommandTag("has_joined_before"); - player.sendMessage(Text.of("欢迎加入 SaltedFish Club Server!")); - player.sendMessage(Text.of("您受本服务器成员邀请并第一次加入本服务器,以下是一些注意事项:")); - player.sendMessage(Text.of(" 1. 服务器内有 base,但我们也鼓励您自立门户")); - player.sendMessage(Text.of(" 2. 下午 " + config.maintainceStartHour + " ~ " + config.maintainceEndHour + " 为服务器维护时间(防沉迷),在这段时间内无法加入服务器。")); - player.sendMessage(Text.of("如果您想邀请朋友加入服务器,可以向管理员提出申请。本服务器为正版服,但是离线玩家也可以加入(需备注)。")); - player.sendMessage(Text.of("为了账号安全起见,请尽量使用正版账号登录后加入。此外,正/盗同名将会被视为两个不同的玩家存档,数据不互通。")); + player.sendMessage(Text.of("§a§l欢迎加入 SaltedFish Club Server!")); + player.sendMessage(Text.of("§a您受本服务器成员邀请加入本服务器,以下是一些注意事项:")); + player.sendMessage(Text.of(" - 服务器内已有的设施均为其他玩家的财产,(如可以)使用时请注意礼貌")); + player.sendMessage(Text.of(" - 工作日下午 " + config.maintainceStartHour + " 至 " + config.maintainceEndHour + "点 为服务器维护时间 (防沉迷)")); + player.sendMessage(Text.of("§c - 邀请新成员即等同为其作担保")); + player.sendMessage(Text.of("§7如果您想邀请朋友加入服务器, 可以向管理员提出申请§7 (需备注正/盗版/小号)")); + player.sendMessage(Text.of("§7此外, 本服务器无密码登录,盗版账号安全责任自负")); player.giveItemStack(generateHelperBook(updateLog, player)); unlockRecipe(player); } @@ -81,11 +82,12 @@ public class WelcomeModule extends ServerModule { var book = new ItemStack(Items.WRITTEN_BOOK); var updLog = new ArrayList(); updLog.add("本书修订截至至您加入服务器的那一刻 (" + FMT.format(ZonedDateTime.now(clock)) + ")\n" + "更多内容请查阅群公告"); - var pages = updateLog.length() / 100; + final var pageLen = 100; + var pages = updateLog.length() / pageLen; for (int i = 0; i < pages; i++) { - updLog.add(updateLog.substring(i * 100, (i + 1) * 100)); + updLog.add(updateLog.substring(i * pageLen, (i + 1) * pageLen)); } - updLog.add(updateLog.substring(pages * 100)); + updLog.add(updateLog.substring(pages * pageLen)); var component = new WrittenBookContentComponent( RawFilteredPair.of("特性列表"), "icybear & You",