Files
Purpur/patches/server/0227-Customizable-sleeping-actionbar-messages.patch
William Blake Galbreath 32fc651f97 Updated Upstream (Paper & Airplane)
Upstream has released updates that appear to apply and compile correctly

Paper Changes:
b470400d5c Add methods to find targets for lightning strikes (#6712)
381a1462b3 Fix unplaced block states after new chunk gen API (#6747)
523a55c609 Fix loading cmds in datapacks (#6641)
a61827df91 VanillaCommandWrapper didnt account for entity senders (#6586)
cd610df101 Re-readd root/admin user detection (#6703)
4a0d935cd0 Always allow item changing in EntityFireball (#5493)
54813dbb21 [ci skip] Misc gradle updates (#6763)
56e65fd3a7 Null check isApplicable for CraftBlockEntityState#update
8575248648 Use ChatRenderer.defaultRenderer() when legacy events have not modified the format (#6104)

Airplane Changes:
f96ca1ce5d Upstream
89cdb2c72a Update Paperweight deps
317e61bb48 We love CI testing
2021-10-13 07:51:40 -05:00

64 lines
4.3 KiB
Diff

From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath <blake.galbreath@gmail.com>
Date: Sat, 3 Jul 2021 21:52:15 -0500
Subject: [PATCH] Customizable sleeping actionbar messages
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
index 984dd58c368595157e51c4c843512803bc8dfd02..74a748f988b08139edc67dcac43686680ebd97aa 100644
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
@@ -1061,11 +1061,29 @@ public class ServerLevel extends Level implements WorldGenLevel {
if (this.canSleepThroughNights()) {
if (!this.getServer().isSingleplayer() || this.getServer().isPublished()) {
int i = this.getGameRules().getInt(GameRules.RULE_PLAYERS_SLEEPING_PERCENTAGE);
- TranslatableComponent chatmessage;
+ Component chatmessage; // Purpur
if (this.sleepStatus.areEnoughSleeping(i)) {
+ // Purpur start
+ if (net.pl3x.purpur.PurpurConfig.sleepSkippingNight.isBlank()) {
+ return;
+ }
+ if (!net.pl3x.purpur.PurpurConfig.sleepSkippingNight.equalsIgnoreCase("default")) {
+ chatmessage = io.papermc.paper.adventure.PaperAdventure.asVanilla(net.kyori.adventure.text.minimessage.MiniMessage.get().parse(net.pl3x.purpur.PurpurConfig.sleepSkippingNight));
+ } else
+ // Purpur end
chatmessage = new TranslatableComponent("sleep.skipping_night");
} else {
+ // Purpur start
+ if (net.pl3x.purpur.PurpurConfig.sleepingPlayersPercent.isBlank()) {
+ return;
+ }
+ if (!net.pl3x.purpur.PurpurConfig.sleepingPlayersPercent.equalsIgnoreCase("default")) {
+ chatmessage = io.papermc.paper.adventure.PaperAdventure.asVanilla(net.kyori.adventure.text.minimessage.MiniMessage.get().parse(net.pl3x.purpur.PurpurConfig.sleepingPlayersPercent,
+ net.kyori.adventure.text.minimessage.Template.of("count", Integer.toString(this.sleepStatus.amountSleeping())),
+ net.kyori.adventure.text.minimessage.Template.of("total", Integer.toString(this.sleepStatus.sleepersNeeded(i)))));
+ } else
+ // Purpur end
chatmessage = new TranslatableComponent("sleep.players_sleeping", new Object[]{this.sleepStatus.amountSleeping(), this.sleepStatus.sleepersNeeded(i)});
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurConfig.java b/src/main/java/net/pl3x/purpur/PurpurConfig.java
index 90599b9022fc1a1e79652f948cdf8ad3a32a2588..1c27d959bb4caeb6af331f4e240d9ef10454b475 100644
--- a/src/main/java/net/pl3x/purpur/PurpurConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurConfig.java
@@ -168,6 +168,8 @@ public class PurpurConfig {
public static String dontRunWithScissors = "<red><italic>Don't run with scissors!";
public static String uptimeCommandOutput = "<green>Server uptime is <uptime>";
public static String unverifiedUsername = "default";
+ public static String sleepSkippingNight = "default";
+ public static String sleepingPlayersPercent = "default";
private static void messages() {
cannotRideMob = getString("settings.messages.cannot-ride-mob", cannotRideMob);
afkBroadcastAway = getString("settings.messages.afk-broadcast-away", afkBroadcastAway);
@@ -180,6 +182,8 @@ public class PurpurConfig {
dontRunWithScissors = getString("settings.messages.dont-run-with-scissors", dontRunWithScissors);
uptimeCommandOutput = getString("settings.messages.uptime-command-output", uptimeCommandOutput);
unverifiedUsername = getString("settings.messages.unverified-username", unverifiedUsername);
+ sleepSkippingNight = getString("settings.messages.sleep-skipping-night", sleepSkippingNight);
+ sleepingPlayersPercent = getString("settings.messages.sleeping-players-percent", sleepingPlayersPercent);
}
public static boolean advancementOnlyBroadcastToAffectedPlayer = false;