Move afk strings to lang file

This commit is contained in:
William Blake Galbreath
2020-03-26 18:39:15 -05:00
parent 405fa5ff10
commit f4ef6baaac
15 changed files with 100 additions and 81 deletions

View File

@@ -1,4 +1,4 @@
From 510dfab4193957ab9509269a01eaa00f8f309d1a Mon Sep 17 00:00:00 2001
From 4fcd9a1dc6957dde11f6c9cafb95e4a298bb9cf8 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath <blake.galbreath@gmail.com>
Date: Thu, 8 Aug 2019 15:29:15 -0500
Subject: [PATCH] Implement AFK API
@@ -10,10 +10,11 @@ Subject: [PATCH] Implement AFK API
.../net/minecraft/server/IEntitySelector.java | 2 +
.../minecraft/server/PlayerConnection.java | 10 +++++
.../net/minecraft/server/WorldServer.java | 4 +-
.../net/pl3x/purpur/PurpurWorldConfig.java | 15 +++++++
.../net/pl3x/purpur/PurpurWorldConfig.java | 11 +++++
.../craftbukkit/entity/CraftPlayer.java | 17 ++++++++
.../java/org/spigotmc/ActivationRange.java | 1 +
9 files changed, 111 insertions(+), 24 deletions(-)
src/main/resources/purpur.lang | 5 ++-
10 files changed, 111 insertions(+), 25 deletions(-)
diff --git a/src/main/java/net/minecraft/server/EntityHuman.java b/src/main/java/net/minecraft/server/EntityHuman.java
index de22cad764..9d26bd1e4c 100644
@@ -36,7 +37,7 @@ index de22cad764..9d26bd1e4c 100644
super(EntityTypes.PLAYER, world);
this.bV = ItemStack.a;
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
index 561588ddaa..31d34e51e9 100644
index 561588ddaa..919921c2d2 100644
--- a/src/main/java/net/minecraft/server/EntityPlayer.java
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java
@@ -1653,8 +1653,51 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
@@ -55,7 +56,7 @@ index 561588ddaa..31d34e51e9 100644
+ return;
+ }
+
+ net.pl3x.purpur.event.PlayerAFKEvent event = new net.pl3x.purpur.event.PlayerAFKEvent(getBukkitEntity(), setAfk, world.purpurConfig.idleTimeoutKick, setAfk ? world.purpurConfig.idleTimeoutBroadcastAway : world.purpurConfig.idleTimeoutBroadcastBack, !Bukkit.isPrimaryThread());
+ net.pl3x.purpur.event.PlayerAFKEvent event = new net.pl3x.purpur.event.PlayerAFKEvent(getBukkitEntity(), setAfk, world.purpurConfig.idleTimeoutKick, LocaleLanguage.getInstance().translateKey("idle.timeout.broadcast." + (setAfk ? "away" : "back")), !Bukkit.isPrimaryThread());
+ if (!event.callEvent() || event.shouldKick()) {
+ return;
+ }
@@ -67,7 +68,7 @@ index 561588ddaa..31d34e51e9 100644
+ }
+
+ if (event.getBroadcastMsg() != null && !event.getBroadcastMsg().isEmpty()) {
+ ((WorldServer) world).getMinecraftServer().server.broadcastMessage(event.getBroadcastMsg().replace("{player}", getName()));
+ ((WorldServer) world).getMinecraftServer().server.broadcastMessage(String.format(event.getBroadcastMsg(), getName()));
+ }
+
+ if (world.purpurConfig.idleTimeoutUpdateTabList) {
@@ -214,10 +215,10 @@ index f0a5d82a12..5d14939873 100644
} else if (entityplayer.isSleeping()) {
++j;
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 84a89d7875..555039f531 100644
index 84a89d7875..b454d71ac0 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -147,6 +147,21 @@ public class PurpurWorldConfig {
@@ -147,6 +147,17 @@ public class PurpurWorldConfig {
disableDropsOnCrammingDeath = getBoolean("gameplay-mechanics.disable-drops-on-cramming-death", disableDropsOnCrammingDeath);
}
@@ -225,15 +226,11 @@ index 84a89d7875..555039f531 100644
+ public boolean idleTimeoutTickNearbyEntities = true;
+ public boolean idleTimeoutCountAsSleeping = false;
+ public boolean idleTimeoutUpdateTabList = false;
+ public String idleTimeoutBroadcastAway = "&e&o{player} is now AFK";
+ public String idleTimeoutBroadcastBack = "&e&o{player} is no longer AFK";
+ private void idleTimeoutSettings() {
+ idleTimeoutKick = getBoolean("gameplay-mechanics.player.idle-timeout.kick-if-idle", idleTimeoutKick);
+ idleTimeoutTickNearbyEntities = getBoolean("gameplay-mechanics.player.idle-timeout.tick-nearby-entities", idleTimeoutTickNearbyEntities);
+ idleTimeoutCountAsSleeping = getBoolean("gameplay-mechanics.player.idle-timeout.count-as-sleeping", idleTimeoutCountAsSleeping);
+ idleTimeoutUpdateTabList = getBoolean("gameplay-mechanics.player.idle-timeout.update-tab-list", idleTimeoutUpdateTabList);
+ idleTimeoutBroadcastAway = org.bukkit.ChatColor.translateAlternateColorCodes('&', getString("gameplay-mechanics.player.idle-timeout.broadcast.away", idleTimeoutBroadcastAway));
+ idleTimeoutBroadcastBack = org.bukkit.ChatColor.translateAlternateColorCodes('&', getString("gameplay-mechanics.player.idle-timeout.broadcast.back", idleTimeoutBroadcastBack));
+ }
+
public boolean batRidable = false;
@@ -277,6 +274,16 @@ index e160f03c1e..11fb146129 100644
maxBB = player.getBoundingBox().grow( maxRange, 256, maxRange );
ActivationType.MISC.boundingBox = player.getBoundingBox().grow( miscActivationRange, 256, miscActivationRange );
ActivationType.RAIDER.boundingBox = player.getBoundingBox().grow( raiderActivationRange, 256, raiderActivationRange );
diff --git a/src/main/resources/purpur.lang b/src/main/resources/purpur.lang
index 0967ef424b..f4694dbcce 100644
--- a/src/main/resources/purpur.lang
+++ b/src/main/resources/purpur.lang
@@ -1 +1,4 @@
-{}
+{
+ "idle.timeout.broadcast.away": "§e§o%s is now AFK",
+ "idle.timeout.broadcast.back": "§e§o%s is no longer AFK"
+}
--
2.24.0